U.S. patent application number 12/636564 was filed with the patent office on 2011-03-24 for systems, methods, and apparatuses for managing configurable monitoring devices.
This patent application is currently assigned to Checkpoint Systems, Inc.. Invention is credited to Michael Mercier, Gary Mark Shafer.
Application Number | 20110068906 12/636564 |
Document ID | / |
Family ID | 43756143 |
Filed Date | 2011-03-24 |
United States Patent
Application |
20110068906 |
Kind Code |
A1 |
Shafer; Gary Mark ; et
al. |
March 24, 2011 |
SYSTEMS, METHODS, AND APPARATUSES FOR MANAGING CONFIGURABLE
MONITORING DEVICES
Abstract
Provided are embodiments of configurable monitoring devices,
methods, systems, computer readable storage media and other means
for locating devices. In some examples, the devices are attached to
a retail or other type of article. The devices can be dynamically
configurable and communicate wirelessly with other network
entities.
Inventors: |
Shafer; Gary Mark;
(Charlotte, NC) ; Mercier; Michael; (Charlotte,
NC) |
Assignee: |
Checkpoint Systems, Inc.
Thorofare
NJ
|
Family ID: |
43756143 |
Appl. No.: |
12/636564 |
Filed: |
December 11, 2009 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61244320 |
Sep 21, 2009 |
|
|
|
61246393 |
Sep 28, 2009 |
|
|
|
61246388 |
Sep 28, 2009 |
|
|
|
61248223 |
Oct 2, 2009 |
|
|
|
61248228 |
Oct 2, 2009 |
|
|
|
61248242 |
Oct 2, 2009 |
|
|
|
61248233 |
Oct 2, 2009 |
|
|
|
61248239 |
Oct 2, 2009 |
|
|
|
61248269 |
Oct 2, 2009 |
|
|
|
61248196 |
Oct 2, 2009 |
|
|
|
Current U.S.
Class: |
340/10.3 |
Current CPC
Class: |
G06K 7/0008 20130101;
G06K 7/10475 20130101; G08B 13/2462 20130101; G06Q 10/08
20130101 |
Class at
Publication: |
340/10.3 |
International
Class: |
G06K 7/01 20060101
G06K007/01 |
Claims
1-41. (canceled)
42. A system for tracking articles comprising: a first ping node
configured to: transmit a first ping signal having a first ping
signal strength; receive a first signal power modification
instruction; and in response to receiving the first signal power
modification instruction, transmit a location signal having a
location signal strength that is different than the first ping
signal strength; a second ping node configured to transmit a second
ping signal having a second ping signal strength; and a monitoring
device configured for attachment to an article, the monitoring
device comprising a processor, the processor configured to: receive
the first ping signal from the first ping node; receive the second
ping signal from the second ping node; receive the location signal
from the first ping node; and determine location information
relating to the monitoring device based at least in part on the
location signal.
43. (canceled)
44. The system of 42, wherein the processor is further configured
to: send the first signal power modification instruction for
instructing the first ping node to lower the first ping signal
strength to a minimum threshold and transmit the location signal
one or more times starting at the minimum threshold and increasing
incrementally to the location signal strength; and send a second
signal power modification instruction for instructing the second
ping node to lower the second ping signal strength to the minimum
threshold and transmit a second location signal one or more times
starting at the minimum threshold and increasing incrementally.
45. The system of claim 42, wherein the processor is further
configured to: send the first signal power modification instruction
for instructing the first ping node raise the first ping signal
strength to a maximum threshold and transmit the location signal
one or more times starting at the maximum threshold and decreasing
incrementally; and send a second signal power modification
instruction for instructing the second ping node to increase the
second ping signal strength to the maximum threshold and transmit a
second location signal one or more times starting at the maximum
threshold and decreasing incrementally.
46. The system of claim 42, wherein: the first ping node is
configured to transmit the first ping signal at a first range,
wherein the first range includes a first retail shelving unit; and
the second ping node is configured to transmit the second ping
signal at a second range, wherein the second range includes a
second retail shelving unit.
47. The system of claim 46, wherein the first range and the second
range are configured to be consistent with a coordinated,
multi-ping node gradient of coverage density.
48. A method for tracking articles using a monitoring device
affixed to an article comprising: receiving, from a first ping
node, a first ping signal having a first ping signal strength;
receiving, from a second ping node, a second ping signal having a
second ping signal strength; and receiving, from the first ping
node, a location signal having a location signal strength that is
different than the first ping signal strength; and determining
location information relating to the article based at least in part
on the location signal.
49. (canceled)
50. The method of claim 48 further comprising: sending a first
signal power modification instruction for instructing the first
ping node to lower the first ping signal strength to a minimum
threshold and transmit the location signal one or more times
starting at the minimum threshold and increasing incrementally to
the location signal strength; sending a second signal power
modification instruction for instructing the second ping node to
lower the second ping signal strength to the minimum threshold and
transmit a second location signal one or more times starting at the
minimum threshold and increasing incrementally.
51. The method of claim 48 further comprising: sending a first
signal power modification instruction for instructing the first
ping node to increase the first ping signal strength to a maximum
threshold and transmit the location signal one or more times
starting at the maximum threshold and decreasing incrementally to
the location signal strength; sending a second signal power
modification instruction for instructing the second ping node to
increase the second ping signal strength to a maximum threshold and
transmit a second location signal one or more times starting at the
maximum threshold and decreasing incrementally.
52. The method of claim 48 further comprising: transmitting, from
the first ping node, the first ping signal within a first range,
wherein the first range includes a first retail shelving unit; and
transmitting, from the second ping node, the second ping signal
within a second range, wherein the second range includes a second
retail shelving unit.
53. The method of claim 52, further comprising the first ping node
and the second ping node receiving configuration information that
causes the first range and the second range to be consistent with a
coordinated, multi-ping node gradient of coverage density.
54. A computer program product for position tracking of an article,
the computer program product comprising: a computer-readable
storage medium having computer readable program code embodied in
said medium, said computer-readable program code to: receive, from
a first ping node, a first ping signal having a first ping signal
strength; receive, from a second ping node, a second ping signal
having a second ping signal strength; receive, from the first ping
node, a location signal having a location signal strength that is
different than the first ping signal strength; attach, using an
attachment mechanism, to an article; and determine location
information relating to the article based at least in part on the
location signal.
55. The a computer-readable storage medium of claim 54 further
comprising computer-readable program code to: send a first signal
power modification instruction for instructing the first ping node
to lower the first ping signal strength to a minimum threshold and
transmit the location signal one or more times starting at the
minimum threshold and increasing incrementally to the location
signal strength; send a second signal power modification
instruction for instructing the second ping node to lower the
second ping signal strength to the minimum threshold and transmit a
second location signal one or more times starting at the minimum
threshold and increasing incrementally.
56. The a computer-readable storage medium of claim 54 further
comprising computer-readable program code to: send a first signal
power modification instruction for instructing the first ping node
to increase the first ping signal strength to a maximum threshold
and transmit the location signal one or more times starting at the
maximum threshold and decreasing incrementally to the location
signal strength; send a second signal power modification
instruction for instructing the second ping node to increase the
second ping signal strength to a maximum threshold and transmit a
second location signal one or more times starting at the maximum
threshold and decreasing incrementally.
57. The system of claim 42, further comprising a network entity
that is configured to transmit the first signal power modification
instruction.
58. The system of claim 57, wherein the network entity is
configured to transmit the first signal power modification
instruction in response to the network entity determining a
triggering event has occurred.
59. The system of claim 57, wherein the network entity is further
configured to transmit a second signal power modification
instruction.
60. The system of claim 59, wherein the network entity is
configured to transmit the second signal power modification
instruction in response to the network entity determining a
triggering event has occurred.
61. The system of claim 59, wherein the first signal power
modification instruction is the same as the second signal power
modification instruction.
62. The system of claim 57, wherein the network entity is
configured to determine efficient pathways for communicating
messages from the monitoring device to various entities within a
network.
63. The method of claim 48 further comprising transmitting a first
signal power modification instruction from a network entity,
wherein the first signal power modification causes the first ping
node to transmit the location signal.
64. The method of claim 63, wherein transmitting the first signal
power modification instruction occurs in response to the network
entity determining a triggering event has occurred.
65. The method of claim 63 further comprising transmitting a second
signal power modification instruction from the network entity.
66. The method of claim 65, wherein transmitting the second signal
power modification instruction occurs in response to the network
entity determining a triggering event has occurred.
67. The method of claim 65, wherein transmitting the first signal
power modification instruction and transmitting the second signal
power modification instruction includes transmitting a single
instruction that is received by both the first ping node and the
second ping node.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This patent application claims priority from U.S.
Provisional Patent Application No. 61/244,320, filed Sep. 21, 2009,
entitled "A Configurable Monitoring Device;" U.S. Provisional
Patent Application No. 61/246,393, filed Sep. 28, 2009, entitled
"Systems, Methods and Apparatuses for Managing Configurable
Monitoring Devices;" U.S. Provisional Patent Application No.
61/246,388, filed Sep. 28, 2009, entitled "A Configurable
Monitoring Device;" U.S. Provisional Patent Application No.
61/248,223, filed Oct. 2, 2009, entitled "Employment of a
Configurable Monitoring Device as an Inventory Management Tool;"
U.S. Provisional Patent Application No. 61/248,228, filed Oct. 2,
2009, entitled "Employment of a Configurable Monitoring Device as a
Marketing Tool;" U.S. Provisional Patent Application No.
61/248,242, filed Oct. 2, 2009, entitled "Configurable Monitoring
Device Having Bridge Functionality;" U.S. Provisional Patent
Application No. 61/248,233, filed Oct. 2, 2009, entitled
"Employment of a Configurable Monitoring Device as a Personal
Identifier for Facilitating Transactions;" U.S. Provisional Patent
Application No. 61/248,239, filed Oct. 2, 2009, entitled
"Employment of a Configurable Monitoring Device as a Security
Tool;" U.S. Provisional Patent Application No. 61/248,269, filed
Oct. 2, 2009, entitled "Key for Commissioning, Decommissioning and
Unlocking Configurable Monitoring Devices;" and U.S. Provisional
Patent Application No. 61/248,196, filed Oct. 2, 2009, entitled
"Systems, Methods and Apparatuses for Locating Configurable
Monitoring Devices," which are each hereby incorporated herein by
reference in its entirety.
TECHNOLOGICAL FIELD
[0002] Embodiments of the present invention relate generally to
network and network management technology and, more particularly,
relate to the management of networks that include dynamically
configurable monitoring devices for use in connection with
monitoring, tracking, and locating activities associated with one
or more articles such as retail products.
BACKGROUND
[0003] Conventional retail security systems, such as electronic
article surveillance (EAS) systems, operate effectively to prevent
shoplifting and the like. However, conventional systems are often
limited to the narrow scope of providing security functionality.
For example, an EAS gate located at an exit of a retail business
establishment may be configured to alarm when an article with an
EAS tag passes through the gate. Other than performing this
important alarming functionality, many conventional systems provide
nothing more to the users of the systems, such as store owners,
store managers, and the like. Additionally, when store owners are
considering the purchase and installation of a conventional
security system in a retail establishment, the limited
functionality offered by the systems can detrimentally affect the
cost-benefit analysis of installing and maintaining the system.
[0004] Additionally, identifying the location of products within a
retail store has often relied on product placement. In other words,
approaches to finding products are often based on placing similar
types of products near each other in the store, thereby allowing
the products' relative placement to assist both customers and store
personnel in finding a desired product. Another approach has been
to use large signs above the aisles of products, which identify
which types of products should be in each aisle. However, using a
sign and/or simply organizing a store with areas for similar
products has proven insufficient under many circumstances. As a
result, customers and store personnel are demanding more accuracy
with respect to locating products within retail and other
environments.
BRIEF SUMMARY OF EXEMPLARY EMBODIMENTS
[0005] Some example embodiments of the present invention are
therefore provided that support security system functionality, as
well as, additional functionalities that would be beneficial to
store owners, store managers, and customers. For example, some
example embodiments support inventory and marketing functionality,
as well as, advanced security functionality.
[0006] According to some example embodiments, a system is provided
for managing and locating configurable monitoring devices and/or
the products they are attached to. A configurable monitoring device
may be a microprocessor-based wireless communication device that
can assume configurable roles or modes of operation within the
system. A mode of operation may be implemented based on
configuration information stored on the configurable monitoring
device. The configuration information may be pre-loaded on the
configurable monitoring device, or configurable monitoring devices
may receive the configuration information via a wireless connection
from a remote device.
[0007] The system, referred to as a monitoring system, may include
any number of configurable monitoring devices configured to
operate, for example, as a network, such as a mesh network, hybrid
mesh network, star network, hybrid star network, or the like. The
network may include a gateway node that supports a monitoring
terminal (sometimes referred to herein as a coordinator). The
gateway node may operate as an interface between the configurable
monitoring device network and the monitoring terminal, for example,
via an external network. The monitoring terminal may be configured
to interact with the configurable monitoring devices and the
configurable monitoring device network to implement a variety of
functionalities.
[0008] Within the network, one or more of the monitoring devices
can include a processor, which can be configured to receive an
indication of a triggering event. In response to receiving the
indication of the triggering event the processor can be configured
to cause the monitoring device to transition into a triggered role.
The triggered role being one of a tag role or a node role, among
others. In some embodiments, the tag role includes configuring the
processor to determine location information relating to the
monitoring device. In other embodiments, the tag role can include,
instead of or in addition to locally determining location
information, configuring the processor to repeat, or relay, any
received data to a network entity, which can then help determine
the location of the monitoring device. The location information can
be relatively complex or simple (e.g., an identifier number of one
or more other nodes the monitoring device "hears").
[0009] The monitoring device's node role can include configuring
the processor to transmit a ping signal. A ping signal can comprise
a relatively small amount of data (e.g., only the node identifier
information) or a relatively larger amount data (such as at least
the amount and type of data common to "beacon" signals used in
wireless communications, some of which may be 802.11.4 compliant).
The node role can also comprise configuring the processor to
forward a tag communication to a network entity.
[0010] Among other things, the monitoring device can be configured
to receive data that includes instructions to transition the
monitoring device. The instructions can be included in the
indication of the triggering event and/or be sent by a network
entity.
[0011] In some embodiments, the monitoring device's processor can
be further configured to receive a second indication of a second
triggering event and, in response, transition from the triggered
role to a second triggered role. For example, the monitoring device
can transition from a tag role, to a node role, back to a tag role.
In some embodiments, the indication of the triggering event can be
a wireless signal that is broadcast wirelessly and received by one
or more monitoring devices' antennas. Despite a plurality of
monitoring devices receiving the indication, the indication of the
triggering event can include a monitoring device identifier or
other information that causes only one of the monitoring devices to
execute its transition into the triggered role. As another example,
a directional antenna (which may allow only one monitoring device
or a subset of the monitoring devices to receive the indication),
any other means, and/or a combination thereof can be used to target
one or more monitoring devices for transitioning.
[0012] The indication of the triggering event can be, for example,
an output of a sensor. The sensor can be integrated inside the
housing of the monitoring device, making the sensor an internal
component of the monitoring device. Some examples of internal
components include a motion detector (e.g., jiggle switch,
accelerometer, etc.), a tamper detection component (which can be
separate from or part of a mounting device used to affix the
monitoring device to an article), or any other internal component
that could be integrated into the monitoring device, some
additional examples of which are discussed herein.
[0013] The sensor can be configured to detect the triggering event
and output the indication of the triggering event. For example, the
triggering event could be movement and, in response to the sensor
determining that the monitoring device is moving, the sensor can
output the indication to the monitoring device's processor (and/or
any other component or device).
[0014] In some embodiments, the sensor can be external to the
monitoring device, such as, e.g., in an external device. The sensor
can produce an output that is then relayed wirelessly or by any
other means to the monitoring device. For example, the external
device can be another device functioning as a node device. Other
examples of external devices that can send the monitoring device
the indication of a triggering event include, e.g., an RFID device
(such as those that are handheld or mounted in a counter or other
piece of furniture), a network entity, an EAS gate, or any other
device that can be configured to emit and/or generate an indication
of a triggering event and/or an alarm event.
[0015] The monitoring device can also include an audio device
configured to emit audio signals. In some embodiments, the audio
device may only be operable when the monitoring device is in the
tag role. The monitoring device's processor can be further
configured to receive an alarm indication of an alarm event while
in the tag role and send a signal to the audio device, causing the
audio device to emit the audio signal. An alarm event can be
similar to or a type of triggering event and an alarm indication
can be similar to or a type of an indication of the triggering
event. For example, the alarm event can be an event, such as
determining someone is trying to steal the article to which the
monitoring device is attached (based on, e.g., suspicious movement
profile). The alarm indication, for example, can be any type of
indication, including a wireless or other type of signal that
corresponds with an alarm event and/or can convey, to the
monitoring device and/or network entity, that an alarm event
occurred. For example, the monitoring device's processor and/or the
network entity can receive the alarm indication from an external
security device, such as an EAS gate and/or internal component that
is configured to generate an output in response to being in
communication proximity with an EAS gate. As another example, a
node can be placed near a store's exit and the monitoring device
can be configured to interpret hearing that node's ping signal as
an alarm indication (with the alarm event being that monitoring
device being too close to the store's exit).
[0016] In some embodiments, the external security device can be a
second monitoring device. The external security device can be in
communication proximity to the monitoring device and the external
security device and/or the monitoring device can be affixed to a
retail product. In such embodiments, the external security device
can be located at a store's exit and be used to detect an alarm
event.
[0017] As used herein, "communication proximity" refers to the
distance in which direct communications can exist wirelessly
between two devices. This distance can be dependent on a number of
variables includes power output, frequency, signal reception
factors (including physical and electrical interference variables),
and/or any other variable. For example, if a monitoring device is
in communication proximity of a node device, the monitoring device
can "hear" the node device's ping signal(s) (e.g., receive the ping
signal and determine the node identifier).
[0018] In some embodiments, the monitoring device can comprise a
battery and/or various other components. For example, the
monitoring device can comprise a mounting device configured to
affix the monitoring device to a retail article. The monitoring
device can also comprise memory configured to store attribute
information (e.g., bar code data, color data, price data, etc.)
associated with the retail article. As another example, the
monitoring device can include a display configured to display
human-readable information and/or a light emitting component (which
can be used to indicate battery power, an error message,
communication functionality, etc.).
[0019] In some embodiments, the monitoring device can be configured
for position tracking of an article (such as a retail item, book,
computer, casino chip, money, personal identification card,
passport, etc.). The monitoring device's processor can be
configured to receive a ping signal from a ping node; determine
location information relating to the monitoring device based at
least in part on receiving the ping signal; and report the location
information to a network entity. The network entity can comprise
one or more additional apparatuses, including a server and network
management and/or monitoring system.
[0020] In some embodiments, the monitoring device and/or network
entity can determine a location zone of the monitoring device in
response to the monitoring device receiving a ping signal from the
ping node or other device functioning as a ping node (both of which
are sometimes referred to herein as a "node device" or "node"). The
monitoring device's processor can then retrieve (e.g., request and
receive), from local or remote memory, a zone-based functionality
profile that corresponds with the location zone. When the
functionality profile is downloaded from remote memory (such as,
e.g., the memory of a network entity), the processor can be
configured to store the functionality profile in the monitoring
device's internal memory.
[0021] The functionality profile can be zone-based and correspond
with one or more zones that represent an area of a physical space,
such as a retail store or warehouse. The zones can also be relative
to the position of one or more other devices, such as a node
device, door, etc.
[0022] The monitoring device can comprise an audible alarm that is
activated by the processor in response to the zone-based
functionality profile including an event signal activation
instruction, such as an alarm activation instruction and/or any
other instructions (such as, e.g., an unlocking instruction for the
monitoring device's attachment mechanism, etc.). In some
embodiments, an alarm may also be initiated at the network entity
in response to determining an alarm event has occurred.
[0023] The monitoring device's processor can be further configured
to, in response to receiving the ping signal from the ping node,
determine a location zone. Determining a location zone can include,
for example, determining the ping node's identifier which is
broadcast as or encoded within the ping signal. In some
embodiments, the network entity can be configured to determine the
applicable zone-based functionality profile for the monitoring
device, in response to the monitoring device repeating the ping
signal(s) the monitoring device received. The monitoring device's
processor can then retrieve, from the network entity, the
zone-based functionality profile that corresponds with the
monitoring device's location zone.
[0024] The monitoring device and the ping node can establish and
execute a uni-directional communication protocol. The
uni-directional communication protocol can allow, for example, the
ping node to wirelessly broadcast data (as, e.g., a ping signal),
which the monitoring device can receive. As mentioned elsewhere
herein, the data can include, e.g., the ping node's identifier
and/or other information. While the monitoring device may or may
not broadcast a response to the ping node, the ping node can be
configured to only send data to the monitoring device (e.g., lack
the components necessary to receive data from the monitoring
device). In some embodiments, the ping node can receive data from a
network entity, even though the ping node lacks the ability to
receive data from a monitoring device. In some embodiments, the
monitoring device may be configured to respond to (e.g., confirm
receipt for) all ping node signals it receives. In other
embodiments, the uni-directional communication protocol lacks the
monitoring device transmitting data intended for the ping node.
[0025] The monitoring device can also establish and execute a
bi-directional communication protocol with the ping node and/or the
network entity. The bi-directional communication protocol can allow
for two way communications, including sending and receiving of
signals between each device participating in the communication
protocol.
[0026] The monitoring device can be further configured to receive a
second ping signal from a second ping node. The second ping signal
can be used by the monitoring device and/or network entity to
determine second location information (such as identifying
information of the second ping node) relating to the monitoring
device. The uni-directional, bi-direction or any other
communication protocol can be established between the monitoring
device and the second ping node. The communication protocol between
the monitoring device and the second ping node can be related to or
independent from the communication protocol used between the
monitoring device and the first ping node.
[0027] A location zone can be determined by the monitoring device
and/or the network entity based on the first location information
and the second location information. The first and second location
information can respectively comprise the first ping node's and the
second ping node's identification data. The network entity and/or
the monitoring device, knowing where those ping nodes are
physically located, can then derive the approximate position of the
monitoring device. In such embodiments, a more accurate location
can be derived from, e.g., more ping node information. The location
(relative to the ping node and/or absolute in a given space) can be
used to access memory (remote or local to the monitoring device)
and retrieve a zone-based functionality profile that can include
instructions and other executable commands for the monitoring
device and/or other device(s). For example, the monitoring device
can comprise an audible alarm that is activated by the processor in
response to receiving a type of event signal activation instruction
(e.g., an alarm activation instruction) included in the zone-based
functionality profile. As another example, the monitoring device
can comprise a mounting device that is unlocked in response to the
zone-based functionality profile including an unlock instruction,
wherein the mounting device is configured to affix the monitoring
device to a retail article. The monitoring device can also include
an antenna that the processor uses to transmit and/or receive data
associated with the location zone to the network entity, ping node
device, and/or any other external device.
[0028] The monitoring device's processor can be further configured
to engage an internal timer; and subsequently receive an indication
of a trigger event, wherein the indication results from the timer
expiring. In some embodiments, rather than engage a timer within
the processor, any other type of time keeping component can be
implemented, including a clock, etc. In response to receiving the
indication of the trigger event, the monitoring device can enter a
wake mode and subsequent to reporting the location information to
the network entity, reset the timer and enter a sleep mode. In some
embodiments, a timer can be started in response to receiving a
triggering event. A triggering event can cause the creation of a
corresponding event signal, which can, among other things, cause
the initiation of a timer.
[0029] In some embodiments, the monitoring device and/or network
entity can send a first signal for instructing the one or more ping
nodes to power down to a minimum threshold and incrementally power
up simultaneously or near simultaneously. The monitoring device can
then monitor (e.g., listen) for subsequent ping signals from the
ping nodes. Subsequent to determining that both the first ping node
and the second ping node have powered down, the monitoring device
can be configured to receive a location signal from either of the
ping nodes. In response to receiving the location signal, the
monitoring device can determine locally or utilize a network entity
to determine its location and/or relate that location information
to an article to which the monitoring device is coupled to. The
location information, for example, can be associated with a first
location corresponding with the location of a first ping node if
the location signal was generated by the first ping node. Or, as
another example, the location information can be associated with a
second location corresponding with the location of the second ping
node if the location signal was generated by the second ping node.
After using one or more ping nodes to determine location
information, the monitoring device can be configured to report the
location information to a network entity.
[0030] In other embodiments, the monitoring device and/or network
entity can then send a first signal for instructing the one or more
ping nodes to power up to a maximum threshold and then
simultaneously or near simultaneously incrementally power down. The
monitoring device can then monitor (e.g., listen) for subsequent
ping signals from the ping nodes. Subsequent to determining that
both the first ping node and the second ping node have powered up,
the monitoring device can be configured to receive location
signals. Subsequent to determining that both the first ping node
and the second ping node have powered up, determining whether a
final ping signal is received from the first ping node or the
second ping node. In response to receiving the final ping signal,
determining the location information relating to the article,
wherein the location information is associated with a first
location of the first ping node if the final ping signal was
generated by the first ping node or the location information is
associated with a second location of the second ping node if the
final ping signal was generated by the second ping node. In other
words, the monitoring device can determine its location based upon
the last ping node it hears.
[0031] Some example embodiments of the present invention are
therefore provided that support locating a tag that may be affixed
to a product within, for example, a retail environment. In
accordance with various example embodiments, the monitoring system
may be implemented that is configured to support the locating of
tags. The monitoring system may be comprised of a plurality of
ping, gateway and/or other nodes that provide ping and/or other
types of signals that are detected by a tag. A tag that is able to
receive a signal from a ping and other nodes can be defined as
having a positional relationship with the node(s). As mentioned
above and detailed below, where the signal strength is sufficiently
strong, a tag may be configured to determine a closest ping node to
the tag based on the ability to receive a signal from a ping
node.
[0032] In situations where a tag receives signals from a plurality
of ping nodes (e.g., due to range overlap or signal reflections), a
locating procedure may be undertaken to identify the ping node
closest to the tag or within communication range with a tag. To
implement the locating procedure, the ping nodes may be configured
to, upon request, adjust the pings' respective signal powers to a
common level (e.g., a minimum level or a maximum level) and
incrementally modify the power of the signal to determine when a
targeted tag begins receiving or communicating, or fails to receive
or communicate, the signals being provided by the ping nodes. Based
on which ping signal was first received or last lost, the tag may
be configured to determine which ping node is closest to the tag.
The tag may then be associated with the ping node such that the tag
is indicated as being located near the ping node within the
environment.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)
[0033] Having thus described the invention in general terms,
reference will now be made to the accompanying drawings, which are
not necessarily drawn to scale, and wherein:
[0034] FIG. 1a is a schematic block diagram of a monitoring system
including a number of configurable monitoring devices according to
example embodiments;
[0035] FIG. 1b is another schematic block diagram of a monitoring
system including a number of configurable monitoring devices
according to an example embodiment of the present invention;
[0036] FIG. 1c is another rendering of a monitoring system
including a number of configurable monitoring devices according to
example embodiments;
[0037] FIG. 1d illustrates a flow chart of an example tag according
to example embodiments;
[0038] FIG. 2 illustrates a block diagram of a monitoring terminal
according to example embodiments;
[0039] FIG. 3 illustrates a diagram of various configurable
monitoring devices implemented in an example retail environment
according to example embodiments;
[0040] FIG. 4 illustrates an example configurable monitoring device
with specialized hardware for performing some of the functionality
within the role of a key according to example embodiments;
[0041] FIG. 5a is an illustration of an example retail environment
having ping nodes and tags located within the environment according
to example embodiments;
[0042] FIG. 5b illustrates a tag information window for displaying
attribute information for a tag according to example
embodiments;
[0043] FIG. 6 is an illustration of a signaling and communications
period for a ping node according to example embodiments;
[0044] FIG. 7 is an illustration of a situation where a tag is
within range of more than one ping node according to example
embodiments;
[0045] FIG. 8 is an illustration of a example procedure where the
signal powers of the ping nodes have been dropped to a minimum
level and incrementally increased to perform locating according to
example embodiments;
[0046] FIG. 9 is a flowchart of an example method for determining
the location of a tag from the perspective of a monitoring terminal
or a tag according to example embodiments;
[0047] FIG. 10 is a flowchart of an example method for determining
the location of a tag from the perspective of a ping node according
to example embodiments;
[0048] FIG. 11 illustrates an example of a flow diagram
illustrating an example method for managing configurable monitoring
devices according to example embodiments;
[0049] FIG. 12 illustrates an example user interface window
implemented by a monitoring terminal and depicting a representation
of a monitoring system according to example embodiments;
[0050] FIG. 13 illustrates an example user interface window
implemented by a monitoring terminal and depicting a representation
of a monitoring system in accordance with some embodiments;
[0051] FIG. 14 illustrates an example of a flow diagram
illustrating an example method for managing configurable monitoring
devices according to example embodiments;
[0052] FIG. 15 illustrates an example tag information window for
displaying attribute information associated with a tag or node
according to example embodiments;
[0053] FIG. 16 illustrates a hub information window for displaying
attribute information for a node according to example embodiments;
and
[0054] FIG. 17 illustrates a tag battery level window for
displaying the battery level for a tag according to example
embodiments.
DETAILED DESCRIPTION
[0055] Some embodiments of the present invention will now be
described more fully hereinafter with reference to the accompanying
drawings, in which some, but not all embodiments of the invention
are shown. Indeed, various embodiments of the invention may be
embodied in many different forms and should not be construed as
limited to the embodiments set forth herein; rather, these
embodiments are provided so that this disclosure will satisfy
applicable legal requirements. Like reference numerals refer to
like elements throughout.
[0056] As defined herein a "computer-readable storage medium,"
which refers to a physical storage medium (e.g., volatile or
non-volatile memory device), can be differentiated from a
"computer-readable transmission medium," which refers to an
electromagnetic signal. Additionally, as used herein, the term
"circuitry" refers to not only hardware-only circuit
implementations including analog and/or digital circuitry, but at
least also to combinations of circuits with corresponding software
and/or instructions stored on a computer-readable storage
medium.
[0057] As indicated above, example embodiments of the present
invention may be configured to support various security, inventory,
marketing, and other functionalities in, for example, a retail
sales environment or other given space. To do so, configurable
monitoring devices may be installed within the retail sales
environment. A description of some example embodiments of
configurable monitoring devices, and the monitoring systems that
may support configurable monitoring devices, is provided in U.S.
Provisional Patent Application 61/244,320 filed Sep. 21, 2009,
entitled "A Configurable Monitoring Device", the content of which
is hereby incorporated by reference in its entirety. The
configurable monitoring devices may be wireless communication
devices that can be dynamically configured to assume one or
transition among roles within the operation of a monitoring system.
To facilitate the ability to dynamically change roles, the
configurable monitoring devices may include a processor, memory,
communications interface (e.g., radio transmitter/receiver, Radio
Frequency ID (RFID) module, or the like). Based on a role that a
configurable monitoring device is expected to assume or transition
to, the configurable monitoring device may also include more
specialized hardware components such as, an alarm, a sensor, a
display, and the like.
[0058] As indicated above, the configurable monitoring devices may
assume a variety of roles within the monitoring system. For
example, a configurable monitoring device may be configured as a
security tag that is attached to an article via a mounting device.
The security tag may be configured to alarm or transmit an alarm
message, if the security tag determines that an alarm condition has
been met. In another example, a configurable monitoring device may
be configured to operate as a node within a monitoring system. As a
node, the configurable monitoring device may support communications
and message routing within the communications network defined by
the system. In this regard, the node may be configured to determine
routing paths within the network for the efficient delivery of
messages. According to another example, a configurable monitoring
device may be configured to operate as a gateway between the
monitoring system and an external network such as a wired local
area network (LAN) or the Internet. Further, a configurable
monitoring device may be configured to operate as a security key
for locking and unlocking a mounting device associated with a
security tag. In this regard, the security key may be configured to
activate or deactivate electronic security features of a security
tag. For purposes of explanation, a configurable monitoring device
configured to operate in node mode will be referred to as a "node",
a configurable monitoring device configured to operate in tag mode
will be referred to as a "tag", a configurable monitoring device
configured to operate in gateway mode will be referred to as a
"gateway", and a configurable monitoring device configured to
operate in key mode will be referred to as a "key". U.S.
Provisional Patent Application No. 61/248,269, filed Oct. 2, 2009,
entitled "Key for Commissioning, Decommissioning and Unlocking
Configurable Monitoring Devices," discusses examples of key devices
and was incorporated above by reference in its entirety.
[0059] The description of the roles of the configurable monitoring
devices described above, and further described below is not an
exhaustive list of the roles that may implemented by the
configurable monitoring devices. Additionally, while the various
roles may be described separately, it is contemplated that the
roles are not necessarily mutually exclusive (though they could be)
and that a single configurable monitoring device may or may not be
configured to simultaneously assume more than one of the roles.
[0060] FIG. 1a illustrates an example monitoring system 60 that
includes a number of configurable monitoring devices in various
roles. Tags 68 (e.g., tags 68a-68i) may be configurable monitoring
devices affixed to a product for the purpose of supporting
security, inventory, marketing, as well as other functionalities.
Nodes 66 (e.g., nodes 66a-66c) may be configured to support network
level activities such as communications routing, tag locating, and
the like.
[0061] Gateway node 64 may be configured as a gateway node to
provide a network interface between the monitoring system 60 and
the external network 30. A monitoring terminal 62 may be in
communication with the gateway node 64, for example, via the
external network 30 or via a direct connection to the gateway node
64, to facilitate management of the configurable monitoring devices
by the monitoring terminal 62 and to further facilitate the
aggregation and analysis of data received from the configurable
monitoring devices. A gateway node may interface with a cellular
network to gain access to other networks, such as the Internet. In
some example embodiments, a gateway node may support USB and
Ethernet connectivity for connection to USB or Ethernet
networks.
[0062] The gateway node 64 may also include or be associated with a
network coordinator. The network coordinator may be configured to
oversee and manage various network operations. For example, the
network coordinator may implement the forming of the network,
allocate network addresses to entities of the network, and maintain
a binding table for the network.
[0063] Although the communications network of the monitoring system
may be any type of network (e.g., mesh network, hybrid mesh
network, star network, hybrid star network, any other type of
network, or combination thereof), in some example embodiments, the
network may be configured to perform aspects similar to a mesh
network. In some cases, the monitoring system 60 may be made up of
a plurality of communication devices (e.g., such as a plurality of
configurable monitoring devices) in communication with each other
via device-to-device communication to form, for example, a mesh
network. However, in other situations, the network may include a
plurality of devices that transmit signals to and receive signals
from a base site or access point, which could be, for example a
base site or access point of a data network, such as a local area
network (LAN), a metropolitan area network (MAN), and/or a wide
area network (WAN), such as the Internet.
[0064] FIG. 1b depicts another example network configuration in
accordance with some example embodiments, where the nodes 66 are
connected in a star or cluster fashion to the gateway node. FIG. 1c
provides another illustration of an example monitoring system with
a communications network. With respect to the network entities of
FIG. 1c, the PAN coordinator (gateway with network management
functionality), the powered routers (communications nodes), the
gate alarm (gate node), the pings (pings nodes), the tags, and the
manager's key may each include a configurable monitoring device
configured for a particular role.
[0065] Other devices such as processing elements or devices (e.g.,
personal computers, server computers, displays, point of sale (POS)
terminals and/or the like) may be coupled to a configurable
monitoring device to access the monitoring system 60. By directly
or indirectly connecting the configurable monitoring devices to
various network devices and/or to other configurable monitoring
devices via the monitoring system 60, the configurable monitoring
devices may be enabled to receive configuration modifications
dynamically and perform various functions or tasks in connection
with network devices or other configurable monitoring devices based
on the current configuration of the configurable monitoring
devices.
[0066] The configurable monitoring devices, and the monitoring
system 60 generally, may utilize any wireless communication
technique for communicating information between the devices or to
the monitoring terminal 62. For example, the configurable
monitoring devices may be configured to support communications
protocols built on the IEEE 802.15.4 standard, such as Zigbee or a
proprietary wireless protocol. According to some example
embodiments, the communications within the monitoring system 60 may
be performed based on a Route Under MAC (Media Access Control)
(RUM) protocol or a modified RUM protocol. Regardless of the
protocol, communications within the monitoring system may be
associated with a network identifier, such as a personal area
network (PAN) identifier. In some example embodiments, configurable
monitoring devices might not be permitted to communicate within the
monitoring system without having a matching network identifier. In
some example embodiments, the monitoring system may regularly or
irregularly change the network identifier and transition to a new
network identifier for security purposes.
[0067] Additionally, to support network communications within the
monitoring system, a system-wide synchronized clock may be
implemented. Synchronization of the clock may be maintained via a
clock signal. Configurable monitoring devices may include real time
clock circuitry to support the synchronized clock and to regulate
the use of precise communications windows.
[0068] The configurable monitoring devices may also support RFID
communications, such as communications based on Generation II Ultra
High Frequency (UHF) RFID standards. In example embodiments where a
configurable monitoring device includes a radio (e.g., an IEEE
802.15.4 radio) and an RFID module, the configurable monitoring
device may be configured to operate as an interface that allows
RFID devices to access the monitoring system 60. For example, an
RFID reader or other RFID device, that does not include a
configurable monitoring device, may communicate with a configurable
monitoring device, such as a tag, and the configurable monitoring
device may relay such communications to entities connected to the
monitoring system. In the same manner, the tag may relay
communications originating on the monitoring system to an RFID
device that has interfaced with a tag. As such, the configurable
monitoring devices may operate as gateway to the monitoring system
for RFID communications.
[0069] The monitoring system 60 may be configured to operate as a
mesh network, hybrid mesh network, star network, hybrid star
network, cluster tree network, any other type of network, or any
combination thereof. In this regard, the monitoring system 60 may
support message hopping and network self-healing. With respect to
message hopping, the nodes 66 may be configured to receive
communications from nearby or assigned tags 68. The nodes 66 may be
configured to determine a system architecture and/or efficient
pathways for communicating messages to the various entities within
the network. In this regard, the nodes 66 may be configured to
generate and maintain routing tables to facilitate the efficient
communication of information within the network.
[0070] For example, in accordance with implemented marketing
functionality, tag 68h may be configured to communicate that the
product that tag 68h is affixed to has been moved or is being moved
from its display location. Tag 68h may be configured to communicate
this information to tags 68g and 68d, because the products affixed
to tags 68g and 68d are related products that a customer may be
interested in purchasing, given tag 68h's determination that the
customer may have decided to purchase the product affixed to tag
68h. Accordingly, tag 68h may generate and transmit a message
addressed to tags 68g and 68d. The message may be received by node
66c, and node 66c may be configured to determine how to route the
message, given current network traffic, such that the message is
efficiently received by tags 68g and 68d. For example, using
generated routing tables, node 66c may determine that the message
can first be transmitted directly to tag 68g, since tag 68g is
connected to or in direct communication with the node 66c. To
transmit the message to tag 68d, node 66c may determine that the
message should be forwarded to node 66b. Node 66b may perform a
similar analysis and determine that the message can be forward to
tag 68d, directly from node 66b. Tag 68h may also be configured to
transmit the message to the monitoring terminal 62. Node 66c may
route the message accordingly, such that the gateway 64 may forward
the message to the monitoring terminal 62.
[0071] As indicated above, the nodes 66 may be configured to
perform communications routing within the monitoring system 60. In
this regard, nodes 66 may operate to extend the range of the
monitoring system. However, according to some example embodiments,
all configurable monitoring devices within the monitoring system 60
may be configured to perform routing functionality. As such,
configurable monitoring devices configured to operate both as tags
and as nodes may communicate directly with each other, if within
range, without having to route the communications through another
node.
[0072] Further, since the monitoring system 60 may be configured to
support self-healing. In this regard, in the event that a node 66
should fail and no longer be able to communicate, messages may be
automatically routed via a path that does not involve the failed
node. For example, in a given scenario, a tag may be connected
(via, e.g., a wireless connection) to more than one node. In the
event that one of the nodes fails, the tag may simply cause
messages to be routed through another node to which the tag is
connected. According to some example embodiments, such as in the
event that another available node is not present, a tag may be
triggered, directed, or otherwise configured to implement node
functionality (e.g., stored in the memory of the tag and
implemented by a processor of the tag). The tag may therefore
become a node to support communications of other tags.
[0073] According to some example embodiments, configurable
monitoring devices that are installed and configured with the
intention that the devices be primarily utilized as nodes may be
powered through a building's wired power system or be mains powered
(in contrast to being only battery powered). Since nodes may be
involved in the frequent transmission of communications, power
utilization of a node may be relatively high. As such, since
configurable monitoring devices configured to operate primarily as
tags would likely be battery powered for mobility purposes, an
example embodiment that implements node functionality within a tag
may be a temporary solution to maintain network continuity while
the failed node is repaired.
[0074] Additionally, the monitoring system 60 may be configured to
compensate for interference and multi-path conditions that can
arise in enclosed environments, such as retail stores, individually
or collectively (such as, e.g., retail mall). To do so, the
monitoring system 60 may be configured, for example by the
monitoring terminal 62, to modify the signal power of select nodes
and tags to minimize interference. Other examples signal power
instructions and adjustments are discussed below. According to some
example embodiments, directional antennas may also be used by
configurable monitoring devices to minimize interference.
[0075] According to various example embodiments, the monitoring
system 60 may be configured to interface with any number of other
types of networks and/or systems. For example, the monitoring
system 60 may interface with EAS systems, RFID systems, closed
circuit television systems, inventory systems, security systems,
sales systems, shipping systems, point of sale terminals,
advertising systems, marketing compliance systems, ordering
systems, restocking systems, virtual deactivation systems,
Lojack.RTM. systems, and the like.
[0076] While the monitoring system 60 may be configured to operate
in a distributed fashion, the monitoring terminal 62 may be
configured to coordinate operations of the monitoring system 60, as
well as, retrieve, aggregate, and analyze data provided by the
configurable monitoring devices of the system.
[0077] Based on the foregoing, and in accordance with some example
embodiments, the nodes may be configured to provide a wireless
signal that may be received by tags that are within range.
According to some example embodiments, the range of a node or the
power level, used to generate the wireless signal provided by the
node, may be set based on the size of the area that the node is
responsible for. For example, if the node is associated with a
small floor display, the signal power may be relatively low. On the
other hand, if a node is responsible for a large shelf unit, the
signal power may be set to a higher level to ensure coverage of the
entire shelf unit.
[0078] Tags may be configured to receive a signal that is provided
by a node and respond to the node indicating that the tag is now
associated with the node, for example, because the tag is located
on the floor display associated with the node. A tag may be
configured to periodically or pseudo-randomly power up (e.g., based
on a wake-up timer or other trigger event), listen for a node
signal (e.g., a ping node can be configured to broadcast a ping
signal), perform a time synchronization based on the node's signal,
and transmit a message to a network entity indicating which node
the tag has received a signal from (based on, e.g., determining a
node identifier embedded in the node's signal). Subsequently, a tag
may perform a second clock synchronization with the node or other
network entity and then power down into a sleep mode for another
period of time or until another triggering event.
[0079] From the signal sent by the node, the tag may receive and
determine a unique identifier and/or other data associated with the
node. The tag may store the identifier and/or other data in its
local storage device(s). As such, the tag would know to which node
the tag has been associated.
[0080] The tag and the node can establish and execute a
uni-directional communication protocol. The uni-direction
communication protocol can allow, for example, the ping node to
wirelessly broadcast data (as, e.g., a ping signal), which the tag
can receive. As mentioned above, the data can include, e.g., the
ping node's identifier and/or other data. While the tag may or may
not broadcast a response to the ping node, the ping node can be
configured to only send data to the tag (e.g., lack the components
or functionality necessary to receive or respond to data from the
tag). In some embodiments, the ping node can receive data from a
network entity (via, e.g., BlueTooth or WiFi), even though the ping
node lacks the ability to receive data from a tag or other
monitoring device (via, e.g., another wireless protocol). In some
embodiments, the tag may be configured to respond to (e.g., confirm
receipt for) all ping node signals it receives, even if the node
may not act on the tag's response. In other embodiments, the
uni-directional communication protocol lacks the tag transmitting
data intended for the ping node.
[0081] The tag can also establish and execute a bi-directional
communication protocol with the ping node and/or any other the
network entity. The bi-directional communication protocol can allow
for two way communications, including sending and receiving of
signals between each device participating in the communication
protocol. As such, the node may receive communication signals from
the tag including a unique identifier of the tag, and the node may
therefore know to which tag(s) the node is associated. The node may
also be configured to report the node/tag associations back to a
monitoring terminal, monitoring system coordinator, and/or other
network entity. Via these and other types of defined tag/node
relationships, various functionalities, as mentioned above and
otherwise herein, may be implemented.
[0082] Additionally, as further described herein, a tag may include
a jiggle switch and/or other motion detection component, the
actuation of which may indicate that a tag is being moved. Upon
detecting actuation of the jiggle switch, the tag may determine a
trigger event has occurred and, in response, may move from a sleep
state into an awake state. Upon entering the awake state, the tag
may perform one or more clock synchronizations with a node and
determine the identifier of the node to which the tag is currently
connected. In some embodiments, the tag may also transmit a message
indicating the identifier of the node to which the tag is currently
connected (possibly a new node since movement may have occurred).
In the event that a tag does not detect a node, the tag may
generate location information, representing the fact that the tag
is out of range of any node, and access its functionality profile
(which may be saved on the tag and/or on a network entity). In some
embodiments, the functionality profile can include an alarm
instruction, which causes the tag to alarm, should the tag
determine it is out of range of any node. A tag that has detected a
node may engage a movement wait timer to facilitate determining
whether further movement of the tag is occurring. In the event that
further movement is detected during the movement wait time, the tag
may attempt to detect a node and again perform a time
synchronization. If the movement wait time expires, the tag may
determine a time until a next wake up into the awake state and an
associated wake-up timer may be reset. Upon beginning the wake-up
timer the tag may transfer into a sleep state. FIG. 1d illustrates
a flow chart of the operation of an example tag consistent with
that described above.
[0083] FIG. 2 illustrates basic block diagram of a monitoring
terminal 62 according to an exemplary embodiment. As shown in FIG.
2, the monitoring terminal 62 may include various components that
support both the basic operation of the monitoring terminal 62 and
the relatively more sophisticated operation of the monitoring
terminal 62 as a coordinator of a monitoring system. Some examples
of these components are shown in FIG. 2. However, it should be
appreciated that some example embodiments may include either more
or less than the example components illustrated in FIG. 2. Thus,
the example embodiment of FIG. 2 is provided by way of example and
not by way of limitation.
[0084] Reference will now be made to FIG. 2 to describe an example
structure and functional operation of the monitoring terminal 62
according to an exemplary embodiment. In this regard, as shown in
FIG. 2, the monitoring terminal 62 may include a processor 250 and
a communication interface 252. In some example embodiments, the
monitoring terminal 62 may include a user interface 258. The
processor 250 may in turn communicate with, control or embody
(e.g., via operation in accordance with corresponding instructions)
a monitoring system manager 256.
[0085] In an exemplary embodiment, the processor 250 may be
configured to, for example, execute stored instructions (in a,
e.g., functionality profile) and/or operate in accordance with
programmed instructions to control the operation of the monitoring
terminal 62. The processor 250 may be embodied in a number of
different ways. For example, the processor 250 may be embodied as
one or more of various processing means or devices such as a
coprocessor, a microprocessor, a controller, a digital signal
processor (DSP), a processing element with or without an
accompanying DSP, or various other processing devices including
integrated circuits such as, for example, an ASIC (application
specific integrated circuit), an FPGA (field programmable gate
array), a microcontroller unit (MCU), a hardware accelerator, a
special-purpose computer chip, or the like. In an exemplary
embodiment, the processor 250 may be configured to execute
instructions stored in a memory device (e.g., memory device 254 of
FIG. 2) or otherwise accessible to the processor 250. The
instructions may be permanent (e.g., firmware) or modifiable (e.g.,
software) instructions and be organized in any manner (such as one
or more functionality profiles). Alternatively or additionally, the
processor 250 may be configured to execute hard coded
functionality. As such, whether configured by hardware or software
methods, or by a combination thereof, the processor 250 may
represent an entity (e.g., physically embodied in circuitry)
capable of performing operations according to embodiments of the
present invention while configured accordingly. Thus, for example,
when the processor 250 is embodied as an ASIC, FPGA or the like,
the processor 250 may be specifically configured hardware for
conducting the operations described herein. Alternatively, as
another example, when the processor 250 is embodied as an executor
of software or firmware instructions, the instructions may
specifically configure the processor 250 to perform the algorithms
and/or operations described herein when the instructions are
executed. The processor 250 may include, among other things, a
clock, an arithmetic logic unit (ALU) and logic gates configured to
support operation of the processor 250.
[0086] The memory device 254 may include, for example, one or more
volatile and/or non-volatile memories. In other words, for example,
the memory device 254 may be an electronic storage device (e.g., a
computer-readable storage medium) comprising gates (e.g., logic
gates) configured to store data (e.g., bits) that may be
retrievable by a machine (e.g., a computing device including a
processor such as processor 250). The memory device 254 may be
configured to store information, data, applications, instructions
or the like for enabling the monitoring terminal 62 to carry out
various functions in accordance with exemplary embodiments of the
present invention. For example, the memory device 254 could be
configured to buffer input data for processing by the processor
250. Additionally or alternatively, the memory device 254 could be
configured to store instructions for execution by the processor
250.
[0087] The user interface 258 may be in communication with the
processor 250 to receive user input via the user interface 258
and/or to present output to a user as, for example, audible,
visual, mechanical or other output indications. The user interface
258 may include, for example, a keyboard, a mouse, a joystick, a
display (e.g., a touch screen display), a microphone, a speaker, or
other input/output mechanisms. Further, the processor 250 may
comprise, or be in communication with, user interface circuitry
configured to control at least some functions of one or more
elements of the user interface. The processor 250 and/or user
interface circuitry may be configured to control one or more
functions of one or more elements of the user interface through
computer program instructions (e.g., software and/or firmware)
stored on a memory accessible to the processor 250 (e.g., volatile
memory, non-volatile memory, and/or the like). In some example
embodiments, the user interface circuitry is configured to
facilitate user control of at least some functions of the
monitoring terminal 62 through the use of a display configured to
respond to user inputs. The processor 250 may also comprise, or be
in communication with, display circuitry configured to display at
least a portion of a user interface, the display and the display
circuitry configured to facilitate user control of at least some
functions of the monitoring terminal 258.
[0088] The communication interface 252 may be any means such as a
device or circuitry embodied in either hardware, software, or a
combination of hardware and software that is configured to receive
and/or transmit data from/to a network and/or any other device or
module in communication with the monitoring terminal 62. According
to some example embodiments where the monitoring terminal 62 is
directly connected to the monitoring system, the communications
interface 252 may include an appropriately configured configurable
monitoring device. Further, the communication interface 252 may
include, for example, an antenna (or multiple antennas) and
supporting hardware and/or software for enabling communications
with a wireless communication network 30 or other devices (e.g.,
other configurable monitoring devices). In some environments, the
communication interface 252 may alternatively or additionally
support wired communication. As such, for example, the
communication interface 252 may include a communication modem
and/or other hardware/software for supporting communication via
cable, digital subscriber line (DSL), universal serial bus (USB) or
other mechanisms.
[0089] In an exemplary embodiment, the communication interface 252
may support communication via one or more different communication
protocols or methods. In some embodiments, the communication
interface 252 may be configured to support relatively low power,
low data rate communication. As such, for example, a low power and
short range communication radio (e.g., radio transmitter/receiver)
may be included in the communication interface 252. In some
examples, the radio transmitter/receiver may include a transmitter
and corresponding receiver configured to support radio frequency
(RF) communication in accordance with an IEEE (Institute of
Electrical and Electronics Engineers) communication standard such
as IEEE 802.15. As such, for example, some embodiments may employ
Bluetooth, Wibree, ultra-wideband (UWB), WirelessHART, MiWi or
other communication standards employing relatively short range
wireless communication in a network such as a wireless personal
area network (WPAN). In some cases, IEEE 802.15.4 based
communication techniques such as ZigBee or other low power, short
range communication protocols such as a proprietary technique based
on IEEE 802.15.4 may be employed.
[0090] In an exemplary embodiment, the communication interface 252
may additionally or alternatively be configured to support
communication via radio frequency identification (RFID) or other
short range communication techniques. Accordingly, the monitoring
terminal 62 may be configured to interface configurable monitoring
devices, in addition to conventional RFID tags and modules. In
another embodiment, the monitoring terminal 62 may be configured to
interface a barcode scanner, or other data entry devices.
[0091] As mentioned above, monitoring terminal 62 may be directly
connected to the monitoring system via a configurable monitoring
device configured as a gateway, or the monitoring terminal 62 may
be connected to the monitoring system 60 via a gateway and an
external network 30. The network 30 to which the communication
interface 252 may connect may be a local network (e.g., a WPAN)
that may in some cases further connect to or otherwise communicate
with a remote network on either a periodic or continuous basis. The
network 30 may include a collection of various different nodes,
devices or functions that may be in communication with each other
via corresponding wired and/or wireless interfaces.
[0092] As indicated above, the processor 250 of the monitoring
terminal 62 may be embodied as, include or otherwise control the
monitoring system manager 256. The monitoring system manager 256
may be any means such as a device or circuitry operating in
accordance with firmware/software or otherwise embodied in hardware
or a combination of hardware and firmware/software (e.g., processor
250 operating under software control, the processor 250 embodied as
an ASIC or FPGA specifically configured to perform the operations
described herein, or a combination thereof) thereby configuring the
device or circuitry to perform the corresponding functions of the
monitoring system manager 256, as described herein. Thus, in
examples in which software is employed, a device or circuitry
(e.g., the processor 250 in one example) executing the software
forms the structure associated with such means.
[0093] The monitoring system manager 256 of the monitoring terminal
may be configured to coordinate, manage, and configure the
operation of configurable monitoring devices. In this regard, the
monitoring system manager 256 may be configured to perform a number
of activities with regard to a monitoring system as further
described below and otherwise herein. While the monitoring system
manager 256 may be configured to perform all of the functionality
described with respect to the monitoring system manager 256 herein,
it is also contemplated that the monitoring system manager 256
could be configured to perform any sub-set of the described
functionality.
[0094] According to some example embodiments, the monitoring system
manager 256 may be configured to define, assign, and manage the
role configuration of the configurable monitoring devices. To do
so, the monitoring system manager 256 may generate configuration
information that indicates the role or mode of operation for a
target configurable monitoring device and transmits the
configuration information to the configurable monitoring device for
storage on the device. Configurable monitoring devices may each be
assigned a unique identifier that may be used for communication
message addressing. As such, configuration information may be
generated by the monitoring system manager 256 and addressed to a
target configurable monitoring device to configure the configurable
monitoring device for a particular role.
[0095] The configuration information may include role policy
information that indicates the functionality that the configurable
monitoring device should perform within the device's assigned role,
and attribute information, such as associated product attributes.
Attribute information may be data that a configurable monitoring
device may utilize within the role to perform functionality. For
example, if a product that the configurable monitoring device is
attached to is clothing, the attribute information may include a
clothing classification (e.g., shirt, pants, tie, dress, etc.), a
color or colors indicator, a size indicator, a price indicator, a
lot indicator, and/or the like. Based on the attribute information,
the functionality performed by a configurable monitoring device may
be determined. For example, configurable monitoring devices
configured with the same role policy information, may trigger
different types of alarm responses based on the price of the
product. According to some example embodiments, attribute
information may be stored in a central location, rather than at the
configurable monitoring device, and the configurable monitoring
devices may access this information remotely via the network of the
monitoring system as needed.
[0096] According to some example embodiments, the configuration
information may include executable code that is, possibly
decompressed, and stored on the configurable monitoring device for
subsequent execution by the configurable monitoring device.
However, in some example embodiments, a configurable monitoring
device may be manufactured with executable code in the form of
configuration information stored within the memory of the device.
Alternatively, a hardware device, such as a memory device or
preconfigured processing device with pre-stored configuration
information may be inserted into and/or electrically connected to
the configurable monitoring device to provide configuration
information and assign a role to the configurable monitoring
device. The pre-stored configuration information may be directed to
a number of possible roles that the configurable monitoring device
could be configured to perform. In this regard, to configure the
configurable monitoring device, the monitoring system manager 256
may provide a message including a data indicator of which role the
configurable monitoring device is to perform. The configurable
monitoring device may receive the indicator and begin performing
(e.g., transition into) the role described by the indicator by
executing the appropriate portion of the pre-stored configuration
information.
[0097] Once a configurable monitoring device is assigned a role via
the configuration information, the device may begin operating
within its respective role. Roles or configurations may be simple
or complex based on, for example, the processing capabilities and
the memory storage available to a configurable monitoring device.
In this regard, a configurable monitoring device may be configured
to perform minimal data processing, and a monitoring terminal may
be configured to perform incrementally more processing of data.
Alternatively, some configurable monitoring devices may include
relatively higher processing power and larger memory storage to
support increased data processing at the configurable monitoring
device, rather than at the monitoring terminal.
[0098] For example, in embodiments where a configurable monitoring
device includes minimal storage memory, attribute information
describing the article to which a configurable monitoring device is
attached may be stored at the monitoring terminal. When a inquiry
device (e.g., price scanner, inventory scanner) requests the
attribute information from the tag, the tag may communicate the
request to the monitoring terminal, and the monitoring terminal may
provide the attribute information to the inquiry device, either
though the monitoring device or through a connection external to
the monitoring device.
[0099] Alternatively, in embodiments where the configurable
monitoring device includes a relatively large storage memory,
attribute information describing the article to which a
configurable monitoring device is affixed may be stored, e.g.,
local to the tag, within the storage memory of the tag. When an
inquiry device (e.g., price scanner, inventory scanner) requests
the attribute information from the tag, the tag may directly
communicate, or initiate the communication of, the attribute
information from the tag to the inquiry device.
[0100] The following describes some of the roles that may be
implemented by the configurable monitoring devices and the
interactions that may involve the monitoring terminal 62 and the
monitoring system manager 256 while the configurable monitoring
devices are operating within their roles. As described above, and
generally herein, a configurable monitoring device may include a
processor and a memory. The processor may be configured to support
network communications. According to various example embodiments,
the processor may be configured, for example, via instructions
stored on the memory (e.g., instructions derived from configuration
information), to support communications in accordance with a role
defined by configuration information. Further, the processor of the
configurable monitoring device may include input/output (I/O) ports
(or pins). Via configuration information, the I/O ports may be
configured to interface with any number of external devices such
as, electronic security devices, merchandising displays, tags on
equipment, employee identification cards, alarms, speakers,
microphones, lights (e.g., light emitting diodes (LEDs)), buttons,
keypads, monitors, displays (e.g., for changeable pricing labels),
sensors (e.g., accelerometers, movement sensors, light sensors,
temperature sensors), cameras, security gates, store audio systems,
customer counters, lighting switches, employee communicators (e.g.,
headsets, handheld radios), door strike mats, jewelry case mats,
Lojack.RTM. devices, global positioning system (GPS) devices, and
the like. As such, the I/O ports may be configured to support one
or more roles that the configurable monitoring device may be
configured to perform.
[0101] Via the I/O ports of the processor, various functionalities
may be triggered, based on the role and the configuration
information of the configurable monitoring device. Following from
the discussion above, triggering may be initiated either at the
configurable monitoring device level or at the monitoring terminal
level. For example, the I/O ports of a configurable monitoring
device's processor may interface with a display for a price tag,
when the configurable monitoring device is configured as a tag.
Within the tag's configured role, for example, the price depicted
on the display may be set to reduce at a given time. In some
example embodiments, the time may monitored by the processor of the
tag and when the given time is reached, the processor may direct
the I/O ports and the connected display to depict a reduced price.
Alternatively, an example that includes triggering at the
monitoring terminal level may include the time being monitored by
the monitoring terminal, and the monitoring terminal may
communicate a message including a reduced price, or an indication
to reduce the price, to the tag at the given time to trigger the
tag to reduce the price accordingly. Further, the I/O ports may
interface with a camera, and the configurable monitoring device may
be configured to control the movement of the camera, detect events,
and capture still camera pictures for forwarding to store personnel
or the authorities, and the like.
[0102] While the roles described herein may be considered from the
perspective of an implementation in a retail sales environment, the
scope of the invention should not be limited to such
implementations. For ease of understanding, FIG. 3, which
illustrates an example of a given space, namely retail environment
100, is referred to in order to describe some of the roles that may
be implemented by the configurable monitoring devices within an
exemplary monitoring system.
[0103] FIG. 3 illustrates a diagram of various configurable
monitoring devices configured to define a monitoring system. In
this regard, FIG. 3 depicts an exemplary retail environment 100
including a stock room 110 where excess inventory is maintained, an
office space 120 from which monitoring activity may be coordinated
or otherwise viewed (e.g., via a monitoring terminal 62), fitting
rooms 130 in which articles of clothing may be tried on by
potential buyers, a retail floor 140 on which various products may
be displayed or otherwise made available for buyers to purchase and
restrooms 150. FIG. 3 also depicts a point of sale (POS) terminal
160 at which payment may be made for products and a door 170
through which customers may enter and exit the retail floor
140.
[0104] Within a retail environment application, various different
products may each be provided with a corresponding configurable
monitoring device operating as a tag. Furthermore, several other
configurable monitoring devices may be provided at various
locations throughout the retail environment to operate, for
example, as nodes. In this regard, the location of a node within
the retail environment may be known (e.g., coordinates of the nodes
may be known) to, for example, the monitoring terminal 62 and the
monitoring system manager 256 to facilitate implementation of a
real-time location system (RTLS) for the tags via the nodes.
Several configurable monitoring devices operating in a tag mode are
illustrated in FIG. 3 as circles with the letter "T" therein. Some
other configurable monitoring devices may be configured during
commissioning to operate in a node mode. Examples of configurable
monitoring devices operating in node mode are shown in FIG. 3 as
circles with the letter "N" therein. An example of a configurable
monitoring device operating in a gateway mode is shown in FIG. 3 as
a circle with the letter "G" therein. The circles with the letter
"C" may be configurable monitoring devices configured to operate
with customer counting devices (e.g., strike pads, and the like).
The circles with the letter "D" may be configurable monitoring
devices configured to operate with door opening monitoring devices
configured to determine and report a number of times customers
open, for example a freezer door in grocery frozen food section.
The circle with the letter "P" may be configurable monitoring
devices configured to operate with a camera to capture digital
photographs when an event, such as the alarming of a tag has
occurred. The configurable monitoring device interfacing with the
camera may be configured to control the movement of the camera and
forward video or pictures. Still others (or a single configurable
monitoring device) may be configured to operate as gates or in a
hub or gateway mode. While configurable monitoring devices may be
configured as tags, nodes, gateways, etc., each of these roles may
be further refined, for example via configuration information, to
specialize the functionality of a configurable monitoring device
within a particular role (such as, e.g., a ping node within the
broader node role).
[0105] Various techniques may be utilized to associate and
dissociate a configurable monitoring device. For example, a
specific network identifier (e.g., PAN ID) may be provided to the
configurable monitoring device at manufacturing. Further, low
transmission power association and dissociation may be implemented
using close proximity signaling. Further, hardware, switches (e.g.,
DIP (dual in-line package) switches), jumpers, MAC address
filtering, button actuated association/dissociation, separate
communications link associating/dissociating, or a barcode scanners
may be used for associated or dissociated.
[0106] A configurable monitoring device configured to operate as a
tag may perform functionalities supporting security functions,
inventory functions, marketing functions, combinations thereof, and
the like. In this regard, subsequent to configuring a configurable
monitoring device as a tag, a commissioning or binding procedure
may be performed. Prior to commissioning, a configurable monitoring
device may be configured as a tag, but the device may not yet be
associated with, or attached to, a product. Upon associating the
tag with a product, the tag may be commissioned. The monitoring
terminal 62 and the monitoring system manager 256 may manage the
commissioning and decommissioning of tags via wireless
communications with the tags. For example, the procedure for
commissioning and decommissioning a tag may include RFID scanning
the tag, a barcode scanning the tag, and/or hardware (e.g.,
specialized microchip) attachment or connection.
[0107] To commission a tag, the monitoring system manager 256 may
provide a signal to the tag indicating that the tag is now active
with respect to its configured role. In this regard, alarming,
inventory, and marketing functionality may be downloaded and/or
activated. For example, a functionality profile, including various
electronic instructions, may be downloaded and/or activated. While
commissioned, the tag may continue to receive instructions or other
information useful for making determinations as to the
functionality to be employed and the corresponding role/mode of
operation to assume.
[0108] Decommissioning of the tag may include powering down the
tag, clearing or resetting data (e.g., product-specific and/or
functional data), and/or directing the tag to enter an idle or
non-transmitting mode in order to conserve battery power until the
tag is re-commissioned. The tag may be decommissioned by
instructions and/or signals received from the monitoring terminal
62 and the monitoring system manager 256.
[0109] Decommissioning may occur at a point of sale, such as POS
160. A node associated with the point of sale (POS node) may be
configured, via configuration information, to perform
decommissioning functionality. In this regard, the POS node may be
configured to decommission the tag when the product is entered into
a sales transaction. The monitoring system manager 256 may be
configured to interface with a sales database or sale system to
monitor transactions. Upon detecting a transaction, data about the
product involved in the transaction may be acquired, and, based on
the acquired data, a decommission signal may be transmitted to the
affected tag. According to some example embodiments, direct access
to a sales database or sales system may not be available due to
concerns regarding the confidentiality of sales and customer
information. In these situations, example embodiments of the
present invention may implement a barcode scanning wedge as an
interface to the transaction activities without accessing the sales
database or sales system.
[0110] According to some example embodiments, a battery check may
be performed by a tag during decommissioning. In this regard, the
configurable monitoring device may include the hardware and
software (e.g., processor configured by instructions) to provide
for monitoring the battery charge level. If the battery charge
level for a tag has fallen below a given threshold, the tag may
alarm or otherwise indicate to the store personnel that the tag
should be removed from service for recharging or battery
replacement. Tags that have battery levels above the given
threshold may be decommissioned and identified as being available
for re-commissioning. According to some example embodiments, a tag
having a battery level that has fallen below a given threshold may
be prevented from being re-commissioned until the battery charge
level is sufficiently improved. This would also desirably limit the
need for a store clerk to retrieve low battery tags from the field
or store environment.
[0111] The barcode scanning wedge may be installed in-line between
a barcode scanner and a point of sale checkout terminal for
receiving data acquired by the barcode scanner. The wedge may be
configured to intercept some or all data acquired by the barcode
scanner and to provide the data to a monitoring system, for
example, via a POS node, without otherwise interrupting the flow of
data to the point of sale terminal.
[0112] The wedge may be configured to facilitate the commissioning
or decommissioning of a communications tag that is part of a
monitoring system. For example, when a cashier scans a barcode of a
product during a purchase transaction, data confirming the
transaction may be uploaded to the monitoring system and the
monitoring system manager 256 via the wedge. Confidential consumer
and sales information may not be uploaded to the retail security
network in some embodiments. In response to receiving a sales
confirmation, the monitoring system manager 256 may be configured
to transmit a decommission signal to an associated tag attached to
the purchased product to cause the tag to be decommissioned.
Decommissioning may be associated with removal of the tag from the
product and/or removal or modification of a record or information
(e.g., inventory information) for the tag stored by the monitoring
system manager 256, for example, in the memory device 254.
[0113] A configurable monitoring device may also be configured as a
manager's key to be implemented within the monitoring system. FIG.
4a depicts an example block diagram of a key, such as manager's
key. The key of FIG. 4a is depicted as using the Zigbee protocol,
but any protocol may be used. In some applications, a mounting
device that mechanically attaches the configurable monitoring
device to a product may be unlockable by the implementation of a
key. According to some exemplary embodiments, a tag having a
mounting device may take the form of a pin tag (for protecting a
clothing), a keeper or plastic enclosure (for protecting compact
disks, software, cologne, and the like), a Spider Wrap.TM. or wire
wrap device (for protecting larger boxed products), or the like.
One such mounting device may be configured to attach to the shaft
of a golf club or similar article such as the device disclosed in
U.S. Pat. No. 7,266,979 herein incorporated by reference in its
entirety. Other such mounting devices may be configured to attach
to a bottle neck or a bottle cap such as the devices disclosed in
U.S. Pat. Nos. 7,259,674 and 7,007,523, both herein incorporated by
reference in their entirety. Still other mounting devices may be
configured to attach through a product such as an article of
clothing or a blister pack such as the hard-tag disclosed in U.S.
Pat. No. 6,920,769 incorporated herein by reference in its
entirety. Each of the aforementioned patents being commonly owned
by the assignee of the present application.
[0114] As mentioned above, Alpha Security Products' Spider
Wrap.TM., which is disclosed in U.S. Pat. No. 7,162,899 and herein
incorporated by reference in its entirety, may also be configured
to operate as a mounting device. Further, a cable lock, such as the
Alpha Security Products' Cablelok.TM. device disclosed in U.S. Pat.
No. 7,249,401 or a keeper, such as that disclosed in U.S. Pat. No.
6,832,498 may be a mounting device. Each of the aforementioned
patents being commonly owned by the assignee of the present
application and herein incorporated by reference in their
entirety.
[0115] The key may be embodied in many different ways. In this
regard, in some situations, the key may be a specially formed
device that mates mechanically with some portion of the mounting
device in order to disable a locking mechanism of the mounting
device. As an alternative, the key may be a magnetic device
configured to interface with a locking mechanism of the mounting
device to enable the mounting device to be unlocked to permit
removal of the mounting device from the corresponding product to
which the mounting device is affixed or otherwise attached. As yet
another alternative, the key may actually include an electrical
component for exchanging signals or information with the tag
associated with the mounting device to enable unlocking of the
mounting device. As such, for example, the key could be an
embodiment of a configurable monitoring device that is provided
with specific configuration information defining functionality for
the configurable monitoring device to function as the key for
unlocking the mounting devices of tags. In such implementations,
the key (or the configuration information associated with the key)
may include a software component or code that is unique to a
particular individual (e.g., a specific manager or assistant
manager).
[0116] The key may also report unlocking activities and/or other
information regarding other devices encountered or activities
undertaken to monitoring system manager 256, so that activity of
the key (or persons possessing the key) may be monitored, logged,
and/or tracked. The examples discussed below, in connection with
locating a tag or network component, could be applied to the
managers key as well. Additionally, authenticity of the code may be
defined or verified so that, for example, if a particular manager's
key is lost or a manager leaves, the corresponding code for the
manager's key may be invalidated so that further unlocking
operations with the manager's key may not be possible. With respect
to the security of the key itself, the key may be configured to
alarm and/or destroy necessary aspects of the key's functionality
if the key is, for example, improperly removed from the retail
environment. For example, the key may clear the memory of the key,
rendering the key useless.
[0117] Utilization of the key for unlocking security devices may be
limited by rules stored on the key or at a monitoring terminal. For
example, rules for using the key may be defined with respect to the
location of the key (e.g., inside/outside the store, inside/outside
a department zone), the employee using the key (e.g., as indicated
by a passcode or detection of a user's RFID tag), a time of day, a
day of the week, a work schedule. Use of the key in violation of
the rules may cause the key to alarm.
[0118] In addition to, or as an alternative to unlocking mounting
devices, the key may be useful for setting an alarm or turning an
alarm on or off. In this regard, to utilize the key, a button on
the key may be actuated which indicates that the key is preparing
to or is performing a locking or unlocking function. An indication
that the button has been pressed may be commutated to the tag that
is to be interacted with or the monitoring terminal. Further, in
consideration of the locating functionality described below, the
key may be located and tracked, and zones of use (e.g., the key
cannot be used in the stock room 110) and other rules may be
defined and enforced with respect to the key.
[0119] According to some example embodiments, a configurable
monitoring device configured as a tag, whether commissioned or
decommissioned, may provide a status signal (or heartbeat signal)
to the monitoring system. The status signal may be a short
transmission of a unique identifier associated with the tag. The
status signal may also provide other types of indications, such as
whether the battery is or is not yet drained and/or whether the tag
is otherwise properly functioning. The status signal may also be
used for real time locationing system ("RTLS") purposes, some
examples of which are further described below. The status signal
may be received by the monitoring system manager 256. The
monitoring system manager 256 and/or the tag may maintain a log of
the most recent receipt of a status signal from a tag and/or node.
Other types of logs, some of which are discussed below, can also be
maintained for and/or by one or more of the configurable monitoring
devices. If the tag fails to provide a status signal that is
received by the monitoring manager and/or any other network entity
within a threshold period of time, an alarm or error indication may
be generated.
[0120] According to some example embodiments, nodes of the
monitoring system may be configured to provide ping signals. The
tags may be configured to receive a ping signal and communicate
information in response to receipt of a ping signal. For example,
battery status, alarm status, received signal strength, and the
like may be provided in response to a ping signal.
[0121] As alluded to above, within the role of a tag various
functionalities may be implemented, such as advanced security
functionalities. For example, complex alarming conditions may be
defined for a tag based on data received from sensors on the tag,
location information, movement information, and the like. For
example, tags may be configured to operate as or with EAS tags,
such that when the tag passes through an EAS gate, the EAS gate may
detect the tag (or a connected EAS tag), and possibly sound an
alarm. According to some example embodiments, the monitoring
terminal 62 may have received a communication regarding the alarm
condition.
[0122] With regard to operation within EAS systems, configurable
monitoring devices may be configured to operate as tags to be
detected, or as gate nodes for detecting tags. In this regard, via
configuration information provided to a configurable monitoring
device, the configurable monitoring device may assume the role of a
gate node, such as gate nodes 180 located at the doorway 170. The
gate nodes may be configured to detect passing EAS tags, such as a
conventional EAS tag or a configurable monitoring device configured
to operate as an EAS tag, and sound an alarm (e.g., an alarm
included on the tag, an alarm included with the gate node, a
storewide alarm). A gate node may directly sound a local alarm, or
the gate node may communicate with the monitoring system manager
256 to sound an alarm.
[0123] It is noteworthy that, due to the dynamic reconfiguration
ability of configurable monitoring devices, any configurable
monitoring device may be configured to operate as a gate node. As
such, EAS gates may be implemented dynamically at many locations
within a retail environment. For example, configurable monitoring
devices that have been configured to operate as tags and are
affixed to a product on a shelf within the retail environment may
also be re-configured to operate as a gate node for the aisle where
the products are located.
[0124] In addition to performing EAS functionality, a monitoring
system may be configured to perform additional advanced security
functionality. Some advanced security features, as well as a number
of other inventory, marketing, and other features may rely upon
implementation of an RTLS within a monitoring system. To implement
RTLS solutions, configurable monitoring devices may be configured
as locating nodes.
[0125] According to some example embodiments, the ping signals
generated by the nodes may be used for locating a tag. In this
regard, a tag may be configured to report to, for example, the
monitoring terminal that the tag is currently within the range of a
ping signal provided by a particular node. The nodes may be
configured to randomly, based on an algorithm, modify the ping
signal strength. When the signal strength is modified, some tags
that were in range may no longer be in range, or some tags that
were previously in range may now be within range of the ping
signal. As tags come in and out of range, due to the changing
signal strength, the signal strength at the time may be used to
determine the distance that a tag is from a particular node. In
some cases, if the distance is determined with respect to multiple
nodes, a physical location of the tag can be determined.
[0126] According to some example embodiments, standard operating
power settings (describing standard fluctuations in power discussed
below) may be utilized in a standard locating mode. However, in an
active locate mode, when the location of a specific article is
desired, an active locate power setting may be utilized.
[0127] Additionally, or alternatively, a locating node may be
configured to use multilateration, hyperbolic positioning, time
difference of arrival (TDOA), trilateration, triangulation,
received signal strength indication (RSSI), global positioning
systems (GPS), any other locating mechanisms, or combination
thereof to support identifying the location of a tag within a
retail environment. According to some example embodiments, a
locating node may operate in isolation to detect the presence, and
possibly the strength of a signal to determine when a tag is
nearby. Locating nodes may take signal measurements and forward the
information to, for example, the monitoring system manager 256 to
analyze the signal and determine a location. According to some
example embodiments, locating nodes may be placed at strategic
locations within the retail environment to support accurate
locating of tags.
[0128] Due to interference that can occur in enclosed environments,
such as retail stores, a signal power optimization procedure may be
performed by the monitoring system, for example, directed by the
monitoring terminal, to minimize interference and determine optimum
signal strength for ping signals. In this regard, the signal
strength of the various nodes may be modified to determine settings
where minimal interference and node signal overlap occurs.
[0129] FIG. 5a illustrates an example retail environment 500, where
a monitoring system has been installed and implemented, such as the
monitoring system described in U.S. Provisional Patent Application
61/244,320, filed Sep. 21, 2009, the content of which was
incorporated by reference in its entirety above, and U.S.
Provisional Patent Application No. 61/246,393, filed Sep. 28, 2009,
the content of which was also incorporated by reference in its
entirety above. The monitoring system may include tags, ping nodes,
communication routing nodes, and a network coordinator and gateway
node. The tags and nodes of the monitoring system may be
configurable monitoring devices, such as those described in U.S.
Provisional Patent Application 61/244,320 filed Sep. 21, 2009, the
content of which is hereby incorporated by reference in its
entirety, and U.S. Provisional Patent Application No. 61/246,388,
filed Sep. 28, 2009, the content of which is also incorporated by
reference in its entirety.
[0130] The monitoring system may also include a monitoring terminal
(not depicted in FIG. 5a) that provides a user interface to the
monitoring system and provides control over the operations of the
monitoring system. The monitoring terminal may be connected
directly to the monitoring system as a peer, or the monitoring
terminal may be connected to the monitoring system via another
network, such as the Internet. In some example embodiments, the
monitoring terminal may include a server that is configured to
control the monitoring system on-site, where the monitoring system
is installed. A user may interface with the monitoring system by
establishing a connection between a remote device (e.g., a personal
computer) and the server. The server may be configured to perform
predefined operations, and log information received from the tags
and nodes. The server may be connected to a gateway or coordinator
node, and the server may communicate with tags and nodes via the
gateway or coordinator node.
[0131] As depicted in FIG. 5a, the retail environment 500 houses a
number of ping nodes (e.g., ping nodes 510, 520, 530, 540, 550,
560, and 570) and tags (e.g., tags 590 and 591). The ping nodes may
be configured to provide ping signals at regular (or irregular)
intervals. The ping signals may include information regarding the
ping node that has transmitted the signal. In this regard, a ping
signal may provide a unique identifier of the ping node that is
providing the signal. According to some example embodiments, the
ping signal may also include timing or time code information. In
some embodiments, the ping signal is considered location
information. For example, when a tag's location can be determined
based upon it's position relative to one or more stationary ping
nodes, the corresponding ping signals, which have a unique
identifier that identifies the broadcasting ping node, can be
considered to include location information. The tag may log the
location and other information it extracts from the ping signal
and/or report (i.e., send, upload, etc.) some or all of the
information to a network entity, such as monitoring system manager
256. After saving and/or reporting the information, the tag can
engage its timer and enter a sleep mode (as discussed above), and
enter a sleep mode to conserve power while waiting for another
triggering event (such as detection of movement or the timer
expiring).
[0132] In some embodiments, the ping nodes are also configured to
receive signals and communications from other entities connected to
the monitoring system such as tags, fixed nodes, or the monitoring
terminal. In particular, the ping nodes may listen, possibly
periodically, to the fixed nodes. As a result, communications with
the ping nodes may occur directly between a tag and a ping node, or
tags and ping nodes may communicate via the fixed nodes. In this
regard, a fixed node may be a node that support network
communications and may be stationary relative to a given space,
which may or may not be moving. For example, the given space could
be the cabin of an elevator, airplane or cruise ship. The location
of the fixed nodes may be known, and as such, the fixed nodes may
be used as reference locations for identifying the locations of the
ping nodes or tags as described in further detail below.
[0133] FIG. 5b depicts another representation of the retail
environment 100 which includes fixed nodes 515, 525, and 535. As
described above, the fixed nodes may be a node that support network
communications and may be stationary. In some example embodiments,
the fixed nodes may be mains powered. The fixed nodes may be
configured to support communications between tags and the
monitoring system, or nodes and the monitoring system. The fixed
nodes may also be configured to support locationing within a
monitoring system with respect to the ping nodes.
[0134] In this regard, the fixed nodes 515, 525, and 535 may be
configured to listen for ping signals or other communications from
the ping nodes and determine the position of the ping nodes. While
ping node may be relatively stationary, according to some example
embodiments, ping nodes may be positioned on movable shelving or
displays. As such, when ping nodes are moved or when new ping nodes
are introduced to the environment, the monitoring system may need
to determine the location of the ping nodes. With the assistance of
the fixed nodes, the locations of the ping nodes may be determined
using various techniques including but not limited to received
signal strength indication (RSSI) techniques, angle of arrival
techniques, time of arrival and time difference of arrival
techniques, and the like. Since the locations of the fixed nodes
are known, the locations of the fixed nodes may be used as
reference points for determining the locations of the fixed
nodes.
[0135] A signaling and communications period 600 for a ping node,
depicted in FIG. 6, may include a first portion 610 dedicated to
transmitting repeated ping signals 620, and a second portion 630
dedicated to support network communications. A ping node may be
configured to repeat the signaling and communications period 600
indefinitely, or until an instruction is received by the ping node
that causes the ping node to change its operation.
[0136] Tags, such as tags 590 and 591, may be configured to
determine and store the identifier of the closest ping node. The
tags may also be configured to report the identity of the closest
ping node to the monitoring terminal. According to some example
embodiments, a tag may enter a "seek closest ping node" state
(i.e., seek_closest state), where the tag is configured to identify
the ping node that is closest to the tag. When a tag receives only
one ping signal, the tag may determine that the ping node providing
the only received ping signal is the closest ping node. However,
when a tag receives sufficiently strong ping signals from more than
one ping node, a locating procedure according to various example
embodiments of the present invention may be triggered.
[0137] In accordance with various example embodiments, ping nodes
may be placed within the given space, such as a retail environment,
in a manner that provides sufficient ping signal coverage to the
environment. In this regard, a ping signal may have an associated
signal strength, and the strength of the signal may determine the
range of the ping signal. The strength of a ping signal may fade as
the distance between the ping node and the measurement point is
increased. The range of a ping node may be defined by a distance
from the ping node where the signal strength is at a range
threshold. Signals below the range threshold may still be received
by tags, but the tags may be configured to ignore signals having
signal strengths below the range threshold. The range threshold may
define a circle (or sphere) with the ping node at the center of the
circle.
[0138] Since locating a tag may involve determining which ping node
the tag should be associated with, according to some example
embodiments, it may be beneficial to minimize the range overlap
between ping nodes. In this regard, the ping nodes may be set to
have as large of a range as possible, while also minimizing
overlap. However, in some example embodiments, ping nodes may be
associated with a given space comprising or consisting of at least
a portion of a particular display shelving unit or rack. The ping
node may be configured to define a range that merely encompasses
the display, shelving unit, or rack, so as not to associate tags
with the ping node that are not placed on the display, shelving
node, or rack. As such, pings nodes may be configured to ensure
coverage of some or all areas of the sales floor, or configured for
a specific purpose to provide coverage of, for example, a
particular display.
[0139] According to some example embodiments, a ping node signal
strength optimization procedure may be undertaken by the monitoring
system, possibly controlled by the monitoring terminal. In this
regard, the signal strengths of the various ping nodes may be
modified to determine optimal settings considering factors such as
coverage, desired range for a particular ping, interference, range
overlap, reflections, and the like. Based on criteria such as
these, an optimal settings for the ping normal operating signal
power levels may be determined.
[0140] FIG. 5a shows the retail environment 500 with the placement
of a number of ping nodes and their associated ranges. Ping node
510 has been set to provide a ping signal strength such that the
range threshold is for ping node 510 is reached at a range 511.
Ping node 520, having a range 521 may be a ping node that covers a
larger area of the retail environment, such as a departmental area
(e.g., the shoe department). Ping nodes 570 and 580, having
respective ranges 571 and 581, may also provide coverage to
respective departmental areas. Ping nodes 530, 540, 550, and 560,
and smaller respective ranges 531, 541, 551, and 561, may provide
coverage to small floor display, where it may be important to be
able to determine precisely which floor display a particular tagged
product is located on.
[0141] In some embodiments, it is noteworthy that, as depicted in
FIG. 5a, to provide coverage to all or substantially all of the
retail environment, the coverage areas of the ping nodes may
overlap. In these overlapping regions, a tag may receive a
sufficiently strong ping signal from more than one ping node. As
such, a locating procedure may be employed (when necessary) to
determine which ping node is closer to the tag.
[0142] In addition to the issues that can arise as a result of
overlapping ping node coverage, ping signal reflections may also
create issues. In this regard, since many retail environments are
enclosed areas, signal reflections within the environments may
create situations where ping signals are received by nodes as
reflected signals. As a result, a tag may not be located within an
overlap area as defined by the range of the ping nodes, but the tag
may still receive signals from multiple ping nodes due to
reflections. Further, the receipt of reflected signals may occur
dynamically, and not in a predicable pattern. For example, in a
retail embodiment, the movement of customers, store personnel, and
other objects can cause dynamically changing signal reflection
issues. Non-uniform architecture of the shopping floor may also
contribute to reflection issues. According to various example
embodiments, some locating procedures provided herein overcome the
issues that arise from ping range overlap, as well as, the issues
that can arise from signal reflections.
[0143] With reference to FIG. 5a, tag 590 is located within range
of ping node 570. In an example scenario, tag 590 receives a ping
signal from only the ping node 570. As such, when the tag 590
enters the seek_closest mode, the tag may detect and receive the
ping signal associated with ping node 570 and associate the
location of tag 590 with ping node 570. The tag 590 may be
configured to store the identifier of ping node 570, as provided in
the ping signal, and report the association of the tag 590 with the
ping node 570 to the monitoring terminal via the monitoring
system.
[0144] In another example scenario, tag 591 is located in an
overlap region between ping node 510 and ping node 580. Tag 591
receives ping signals, having sufficient signal strength, from both
ping node 510 and 580. Since tag 591 has received ping signals from
more than one ping node, a locating procedure may be undertaken to
determine which ping node is closer to the tag.
[0145] FIG. 7 illustrates the ping nodes 510 and 580, and the tag
591 in isolation from the rest of the retail environment 500 of
FIG. 5a, for illustration purposes. In accordance with various
example embodiments, the tag 591, having transitioned into a
seek_closest state may report to the monitoring terminal that the
tag 591 is currently receiving ping signals from more than one ping
node. The tag 591 may be configured to report the identities of the
ping nodes to the monitoring terminal. In response, the monitoring
terminal may generate a signal power modification instruction, and
transmit the signal power modification instruction to the
identified ping nodes 510 and 580. According to some example
embodiments, rather than the monitoring terminal generating and
transmitting the signal power modification instruction, the
affected tag 591 may be configured to generate the signal power
modification instruction and transmit the signal power modification
instruction to the identified ping nodes 510 and 580.
[0146] In response to receiving the signal power modification
instruction, the ping nodes 510 and 580 may be configured to reduce
the power output, used to generate of their respective ping
signals, to a minimum threshold level. The minimum threshold level
need not be the absolute minimum value, but can be a relative value
that is preprogrammed into at least two nodes configured to
implement this type of locationing. For example, the minimum
threshold level could be 20 mW, 10 W, and/or any other given
value.
[0147] Referring now to FIG. 8, ping node 510 may reduce the power
output, thereby reducing the ping signal to range 511a. Similarly,
ping node 580 may also reduce its power output to the same value as
ping node 510, and its ping signal will have the same range as ping
node 510, as shown by range 581a. It is noteworthy that ping nodes
510 and 580 initially (i.e., before the nodes received the signal
power modification instructions) transmitted ping signals at
different signal strengths resulting in different starting ranges,
possibly for coverage reasons. However, according to various
example embodiments, the ping nodes, in response to receiving the
signal power modification instruction, are configured to modify
their respective signal strengths to an equal or substantially
equal power level, or so their ranges are equal or substantially
equal.
[0148] Upon reducing the signal strength based on a minimum
threshold power level, the ping nodes may be configured to begin a
process of incrementally increasing the signal strength of the ping
signals. The ping nodes may be configured to perform periodic step
increases in the signal strength, thereby causing a period step
increase in signal range. For example, the power level can increase
such that the corresponding signal range increase some distance
(e.g., 2 inches, 2 feet, or any other acceptable distance) every
set amount of time (e.g., 0.2 seconds, 2 seconds, 20 seconds, or
any other acceptable amount of time). The ping nodes may include
clocks that are synchronized with each other and/or the broader
monitoring system, and the ping nodes may use the synchronized
clocks to trigger the incremental changes to the signal strength at
regular intervals. Having lost the ping signals from the ping nodes
510 and 580, due to the reduction of signal strength, the tag 591
may be configured to detect or listen for the first ping signal
that is received after the signal power modification instruction is
issued, or after the tag 591 reports the reception of multiple ping
signals to the monitoring terminal.
[0149] Referring to FIG. 8, after a first interval, the ping nodes
510 and 580 may increase their respective ping signal strength by
an equal or substantially equal amount. In this regard, the ping
nodes 510 and 580 may be configured to increase the signal strength
to achieve the ranges 511b and 581b, respectively. After a second
interval, the ping nodes 510 and 580 may again increase their
respective ping signal strength by an equal or substantially equal
amount. The ping nodes 510 and 580 may be configured to increase
the signal strength to achieve the ranges 511c and 581c,
respectively.
[0150] At range 511c, the tag 591 may receive the ping signal from
ping node 510, but not from ping node 580. As a result, the tag 591
may be configured to determine that the tag 591 is closer to ping
node 510. The tag may store the identifier of ping node 510, and
report the tag's association to ping node 510 to the monitoring
terminal and/or other network entity.
[0151] Upon determining that the tag 591 is closer to ping node
510, the process of incrementing the power may cease. For example,
in some embodiments, the power incrementing may cease in response
to an end power modification instruction issued by the tag 591, the
monitoring terminal and/or other network entity, and received by
the ping nodes 510 and 580. The ping nodes 510 and 580 may be
configured to return to their respective original or normal
operating ranges 511 and 581, respectively.
[0152] As an alternative to decreasing the signal strength to an
equal level, followed by subsequent increases in signal strength, a
similar example procedure may be undertaken where the signal
strength is first increased to a maximum threshold level.
Subsequent to increasing the ping signal strength to the maximum
level, the signal strength of the involved ping nodes may be
reduced periodically by incremental amounts until the node receives
a signal from only one ping node. The last ping node that the tag
receives a signal from may be identified as the closest ping node
to the tag.
[0153] As another alternative, according to some example
embodiments, rather than initially reducing the ping signal
strength to a minimum threshold level or raising the ping signal
strength to a maximum threshold level, the ping nodes involved in
the locate procedure may reduce/raise the signal strength to the
current lowest/highest signal strength of the ping nodes involved
in the locate procedure. Based on whether the tag receives a signal
from a single ping after modifying the signal strengths in this
manner, the tag may be configured to determine whether the further
procedure of incrementally increasing/decreasing the signal
strength of the ping nodes is required. In this manner, according
to various example embodiments, the procedure for locating the
closest ping node may be expedited.
[0154] According to various example embodiments, in addition to
determining which pings nodes that a tag is receiving ping signal
from, a tag may be configured to measure the signal strength of the
ping signals. In some example embodiments, information about signal
strength and distances may be acquire from the data included in a
communication in consideration of the modulation that was used to
transmit the data, and analysis of the data may reveal information
about signal strength and distance information. According to
various example embodiments, the tag may consider the signal
strength of ping signals that the tag is receiving when determining
which ping node is closer. For example, signal strengths may
fluctuate for a number of reasons (e.g., movement of customers or
products within a retail environment). As such, the tag may be
configured to determine the closest ping node by monitoring the
signal strengths over a period of time to, for example, determine
an absolute maximum signal strength or determine an average signal
strength, and identify the closest ping node based on these values.
Further, according to some example embodiments, received signal
strength indication (RSSI) techniques may be used to assist in
identifying a closest ping node.
[0155] Additionally, in some embodiments an averaging scheme may be
utilized in an attempt to normalize or remove incorrect closest
ping node determinations. In this regard, a tag may keep a running
log and average of signal strength values detected from a
particular ping node or a closest ping node. And if signals or
communications are received that are determined to be outside of a
threshold range from the running average, those deviations in
signal strength may be disregarded as being a result of a
reflection or other unexplained occurrence. If a given number of
signals or communications (e.g., 10) are received that are outside
the threshold, a change in the placement of ping nodes may have
occurred, and the generation of a new running average may be
triggered. Changes in this regard, may be the result of movement of
the tag, movement of the ping nodes, or the introduction or removal
of a ping node to or from the environment. For example, the log and
running average can include the last 10, 100, 1000, or any other
suitable number of signals or communication values. In some
embodiments, the number of suitable signal or communication values
can be time dependent (e.g., a running average can be made from
each signal or communication received over the past hour, 10 hours,
day, two days, week, or any other suitable period of time).
[0156] FIG. 9 illustrates an example method of the present
invention that may be implemented by a tag or a monitoring
terminal. The example method begins at 900, where an indication
that a tag is receiving ping signals from multiple ping nodes may
be received. A tag may receive this indication internal to, for
example, the processor of the tag, or the monitoring terminal may
receive this indication. At 910, the identification of each of the
ping nodes that the tag is receiving ping signals from may be
determined. Further, at 920, a signal power modification
instruction may be generated. The signal power modification
instruction may be addressed to the ping nodes identified at
910.
[0157] At 930, the signal power modification instruction may be
transmitted to each of the identified ping nodes. The identified
ping nodes may subsequently perform the operations of a power
modification procedure at 940, for example, as indicated in FIG.
10. Upon determining the closest ping node, an indication of the
identified ping node that is closest to the tag may be received at
950. The tag may then be associated with the closest node for
location purposes.
[0158] FIG. 10 illustrates an example method of the present
invention that may be implemented by a ping node. The example
method begins at 1000, where a signal power modification
instruction may be received. At 1010, the signal strength may be
lowered to a minimum threshold level (or raised to a maximum
threshold level). At 1020, the signal strength of the ping signal
may be periodically increased (or decreased) by an incremental
amount. Subsequent to performing one or more signal strength
modifications, the ping node may return the signal strength to a
normal operating level at 1030.
[0159] FIGS. 11 and 12 illustrate the modification of normal
operating levels for ping nodes. It is noteworthy that the ping
nodes in FIGS. 11 and 12 are stationary, but the normal operating
levels of the ping nodes have changed. In this regard, a monitoring
system, via a tag, fixed node, or other ping nodes. As described
above, the monitoring system may perform an optimization procedure
to determine the normal operating levels of the ping nodes. In this
regard, the normal operating levels may be optimized based on
identified signal reflection issues, area coverage, and the like.
According to some example embodiments, the normal operating levels
of the various ping nodes may be modified to achieve particular
goals with respect to, for example, locating a particular tag or
group of tags. By dynamically changing the normal operating levels
of the ping nodes, different gradients of coverage density may be
generated within a given space or portion thereof.
[0160] FIG. 11 depicts a number of ping nodes on the left side of
the space that may be associated with aisles of a department store,
which are positioned in a uniform manner with associated ping nodes
on the shelving or the like. The right side of the environment may
be representative of a non-uniform floor space where a number of
displays are located close together. Tags located in the right side
may be more likely to interact with multiple ping nodes configured
as shown in FIG. 11.
[0161] In response to, for example a detected theft event, an
inventory sweep, regular modification of normal operating levels,
or the like, the normal operating levels of the ping nodes may be
modified resulting in a different gradient of coverage density
within the environment. For example, as shown in FIG. 12, the
normal operating levels of the ping nodes can be modified from
those depicted in FIG. 11. In this regard, the coverage is
increased on the right side of the space, resulting in increased
overlap in some ping node coverage. On the other hand, the left
side of the environment, coverage has been decreased such that
there is little or no interaction between the respective ping
signals. As a result, the right portion of the space, which
included substantial overlap in coverage in FIG. 11, now has little
or no overlap in coverage.
[0162] To implement the modifications to the normal operating
levels of the ping nodes, a triggering event may occur. A
triggering event may be, as described above, a detected theft
event, an inventory sweep, regular modification of normal operating
levels, or the like. In response to the triggering event, the ping
nodes may be communicated a normal operating level modification
message. In response to receiving the message, the ping nodes may
adjust the normal operating level accordingly.
[0163] FIGS. 9 and 10 illustrate flowcharts of example systems,
methods, and/or computer program products according to example
embodiments of the invention. It will be understood that each
operation of the flowcharts, and/or combinations of operations in
the flowcharts, can be implemented by various means. Means for
implementing the operations of the flowcharts, combinations of the
operations in the flowchart, or other functionality of example
embodiments of the present invention described herein may include
hardware, and/or a computer program product including a
computer-readable storage medium (as opposed to a computer-readable
transmission medium which describes a propagating signal) having
one or more computer program code instructions, program
instructions, or executable computer-readable program code
instructions stored therein. In this regard, program code
instructions may be stored on a memory device of an example
apparatus (e.g., a tag, a monitoring terminal, a ping node, etc.)
and executed by a processor of the apparatus. As will be
appreciated, any such program code instructions may be loaded onto
a computer or other programmable apparatus from a computer-readable
storage medium to produce a particular machine, such that the
particular machine becomes a means for implementing the functions
specified in the flowcharts' operations. These program code
instructions may also be stored in a computer-readable storage
medium that can direct a computer, a processor, or other
programmable apparatus to function in a particular manner to
thereby generate a particular machine or particular article of
manufacture. The instructions stored in the computer-readable
storage medium may produce an article of manufacture, where the
article of manufacture becomes a means for implementing the
functions specified in the flowcharts' operation(s). The program
code instructions may be retrieved from a computer-readable storage
medium and loaded into a computer, processor, or other programmable
apparatus to configure the computer, processor, or other
programmable apparatus to execute operations to be performed on or
by the computer, processor, or other programmable apparatus.
Retrieval, loading, and execution of the program code instructions
may be performed sequentially such that one instruction is
retrieved, loaded, and executed at a time. In some example
embodiments, retrieval, loading and/or execution may be performed
in parallel such that multiple instructions are retrieved, loaded,
and/or executed together or simultaneously. Execution of the
program code instructions may produce a computer-implemented
process such that the instructions executed by the computer,
processor, or other programmable apparatus provide operations for
implementing the functions specified in the flowcharts'
operations.
[0164] Accordingly, the execution of instructions associated with
the operations of the flowcharts by a processor, or storage of
instructions associated with the blocks or operations of the
flowcharts in a computer-readable storage medium, support
combinations of operations for performing the specified functions.
It will also be understood that one or more operations of the
flowcharts, and combinations of blocks or operations in the
flowcharts, may be implemented by special purpose hardware-based
computer systems and/or processors which perform the specified
functions (e.g., field programmable gate arrays (FPGAs),
application specific integrated circuits (ASICs), or combinations
of special purpose hardware and program code instructions.
[0165] To support real-time locating of tags (and the products to
which the tag is affixed), tags may be configured to provide
locating signals (e.g., status signals) that may be received, for
example, by configurable monitoring devices configured as locating
nodes. Indications of the locating signals may be provided to the
monitoring system manager 256 for analysis to determine the
location of the tags within the retail environment. Upon
determining the location of a tag, the monitoring system manager
256 may be configured to output the location of the tag on a map
displayed via the user interface 258 as shown for example in FIG.
13.
[0166] Returning to the discussion of FIG. 3, in addition to simply
outputting the location of the tag to the user interface 258, the
monitoring system manager 256 may be configured to consider the
location information of a tag with respect to defined rules, alarm
conditions, and alarm responses. In this regard, zones of interest
within a retail environment may be defined, and when the monitoring
system manager 256 determines that a tag has entered a zone of
interest security functionality, such as an alarm response, may be
implemented. For example, store personnel may wish to define an
alarm condition when products enter the restroom area 150 of FIG.
3. As such, a zone of interest may be defined for the restroom area
150. Accordingly, when the monitoring system manager 256 determines
that a tag has entered the restroom area, an alarm signal or
message may be generated, and an alarm response may be implemented
sounding an alarm. The alarm signal or message may be sent to the
tag, and an alarm on the tag may be activated. Additionally or
alternatively, a notification may be provided to store personnel,
via for example, a mobile communications terminal and/or a remote
alarm may be activated. Further, zones of interest may be defined
with respect a variety of areas within the retail environment
(e.g., the stock room, point of sale, fitting room, etc.).
Additionally, zone-based functionality profiles can be used by the
tags. Like the more generic functionality profiles discussed above,
zone-based functionality profiles can be stored and accessed
locally within the tag and/or at a network entity, such as
monitoring system manager 256. The zone-based functionality profile
can include instructions and other commands that are specific to a
particular location zone of the given space.
[0167] For example, a location zone of interest may also be
associated with additional parameters, such as a time interval or
duration, which may be included in the tag's zone-based
functionality profile for the location zone. A customer, for
example, may be permitted to bring an article with a tag into the
fitting room 130, but only for a threshold duration of time. Store
personnel may, for example, wish to set a thirty minute duration
for the fitting room. Accordingly, the monitoring system manager
256 may be configured to define a duration of time, such as thirty
minutes, for a zone of interest. The monitoring system manager 256
may be configured to implement a timer based on the threshold
duration. The timer may continue to run while the tag is located
within the zone of interest and, when the time reaches the
threshold, an event signal can be generated. The event signal, for
example, may include an alarm instruction and be based on the
zone-based functionality profile. The alarm instruction can be
executed, causing an alarm signal or alarm message (e.g., an
automatically generated e-mail to a user device, etc.) to be
generated and transmitted by and/or to the monitoring system
manager 256 and/or tag. In some embodiments, the event signal can
include other types of instructions and/or other data may not
include or initiate an alarm signal. For example, the event signal
can comprise data that indicates the tag's, includes tag location
information, causes the tag's or other device's light(s) to
illuminate, cause another network device (such as a closed circuit
video camera) to flag data as relevant, and/or any other type of
data that can cause any other type of desired response. For
example, the event signal can cause the monitoring system manager
256 to determine that the tag has moved out of the zone of interest
(such as a fitting room) and, in response, the monitoring system
manager 256 and/or the tag may be configured to reset the timer. In
this manner, the monitoring system can implement a delay before
alarming; thereby giving the customer time to try on an article of
clothing before determining that a suspicious event may have
occurred or be occurring.
[0168] Locating a tag may also allow for tracking the movement of a
tag and the associated product through the store. Tracking the
movement of the product may provide inventory, security, and
marketing functionality. With respect to security functionality, it
has been determined that many experienced shoplifters move about a
store in a particular manner. Based on the location information
determined for a tag, the movement of a product may be tracked by
the monitoring system manager 256 and a movement profile may be
generated and compared to suspicious activity movement profiles. If
a match is identified, a notification may be provided to a manager,
security guard, or the like via a mobile communications terminal to
investigate the situation. Further, according to some example
embodiments, the monitoring system manager 256 may have configured
other tags, or may signal (e.g., send alarm instructions to) other
tags on nearby devices to alarm when a match is identified to, for
example, assist in locating the shoplifter. Adjacent tags could
then provide an alarming pattern that "follows" a would-be
shoplifter around or through the retail environment.
[0169] Additionally, the monitoring system manager 256 and/or other
network entity may be configured to interface, via a network
connection or the like, with customer information terminals 195 to
support security functionality. Customer information terminals 195
may be computing devices including a display and audio output
capabilities (e.g., speaker, speaker driver, etc.). A customer
information terminal may be located at strategic security locations
such as exits and entrances. The monitoring system manager 256 may
be configured to interface with the customer information terminals
195, via for example a network connection, to provide output to
customers and would-be shoplifters. For example, a customer
information terminal and a movable video camera may be located at
the exit of a retail environment. The moveable video camera may be
controlled by the monitoring system manager 256. When the
monitoring system manager 256 determines that a tag has moved into
a zone of interest defined near the exit, the movable camera may
move to capture the image of the individual carrying the tag (and
the associated product). The video captured by the camera may be
displayed on the customer information terminal to indicate to the
shoplifter that they are being recorded and thereby have a
deterrent effect. In addition, in some embodiments, the store's
background music system may be quieted or muted and/or other noise
overcoming strategies may be implemented, in response to the
monitoring system 256 determining that a tag has moved into a zone
of interest and/or entered an alarm state.
[0170] In a similar application involving customer information
terminals, tags entering a store may be considered. For example, if
the monitoring system manager 256 determines that a tag has entered
the store through the front entrance, the monitoring system manager
256 may be configured to cause the customer information terminal to
either visually and/or audibly direct the customer to the customer
service desk for product returns.
[0171] In addition to configurable monitoring devices being
configured as EAS gate nodes, configurable monitoring devices may
also be configured to operate as gate nodes via the locating
functionality described above or based on a determination that a
tag is within range of a gate node's ping signal. In some example
embodiments, a gate node may detect the proximity of a tag by
receiving communications from the tag in response to a ping signal
provided by the gate node. To avoid situations where a gate node
detects the proximity of a tag that is properly within the retail
environment, and is not located so close to the exit so as to
indicate that the attached article is being stolen, guard nodes may
be implemented. The guard nodes may be located near an exit and may
be configured to prevent tags within the store from improperly
associating themselves to the gate nodes and causing erroneous
alarming.
[0172] A gate node may be connected to mains power, and may include
a battery to support operation when mains power is lost. The gate
node may transmit regular ping signals, which include the gate
node's unique identifier, and listen for responses from tags that
are within range. If a tag detects that the strongest ping signal
that the tag is receiving is from a gate node, the tag may transmit
a message including the tag's unique identifier to the gate node
and the tag may enter a first alarm mode. In this regard, a tag may
maintain a list of identifiers for gate nodes to determine when a
signal is being detected from a gate node.
[0173] In the first alarm mode, the tag may be configured to emit
an audible chirp every second (or other predetermined time period),
providing a deterrent indication to an individual holding the
article to which the tag is affixed. While in the first alarm mode,
the tag may continue to listen for ping signals from other nodes,
and if a ping signal from a non-gate node becomes the strongest
ping signal detected by the tag, the tag may transfer from the
first alarm mode to a normal mode (e.g., since the tag has
apparently moved away from the gate node and the exit). However, if
the strongest received ping signal continues to be the signal from
the gate node, and the received signal strength passes a predefined
gate node signal strength threshold, the tag may transfer into a
second alarm mode. In the second alarm mode, the tag may be
configured to alarm continuously. Again, the tag may continue to
listen for ping signals from other nodes, and if a ping signal from
a non-gate node becomes the strongest ping signal detected by the
tag, the tag may transfer from the second alarm mode to the first
alarm mode or a normal mode (e.g., since the tag has apparently
moved away from the gate node and the exit).
[0174] As mentioned above, tag tracking may also provide marketing
benefits. Movement of tags associated with particular products may
logged by the monitoring system manager 256 over a period time, and
the monitoring system manager 256 may be configured identify
customer trends by aggregating the data. Using the trends, product
layout within a store may be modified to increase sales. The
customer trends may reveal purchasing patterns, customer traffic
patterns, in-store dead-spots, and the like, which may not have
otherwise been identified. Further, information regarding the
effects of moving product display racks and associated products
within the store may be determined based on the movement of
customers and the sales of the associated products.
[0175] With respect to additional marketing functionality, since
the location of a product can be determined, the monitoring system
and the monitoring system manager 256 may be configured to make
suggestions to customers for purchasing other products. For
example, movement of a tag associated with a dress shirt may be
detected, and the movement may be tracked to a sales area for neck
ties. The monitoring system manager 256 may be configured to
consult a database to suggest a neck tie that matches the shirt,
based on attribute information associated with the tag affixed to
and associated with the shirt. To implement the suggestion
procedure, the monitoring system manager 256 may interface with a
customer information terminal 195 located near the neck tie retail
area.
[0176] Example marketing compliance applications and functionality
may also be implemented by the monitoring system. In this regard,
some retail stores may have requirements for how the store should
be set (i.e., where particular products should be located within
the store). A floor plan or set design may be followed for setting
the store. To ensure that a store complies with a given set design,
the location of tags may be queried. Tags associated with
particular products may be checked against a stored, electronic set
design to ensure that the products are located in the correct
locations within the store. For example, the location of the winter
sweaters within the store may be queried, to determine if the
winter sweaters have been located on a table at the entrance of the
store in accordance with a set design. The results of the query may
be compared to the set design to determine whether the store
complies in this regard.
[0177] Another example marketing application may be automatic price
modification. In this regard, a tag may be configured to change the
price of a product (or suggest the change of a price for the
product) based on various factors. A tag may be configured to
implement a timer and determine, for example, a "time on the sales
floor" value. If the time on the sales floor value reaches a
threshold level, the price for the article that the tag is
associated with may be modified. To support this functionality,
according to some example embodiments, when the tag is commissioned
or is placed on the sales floor, a time and date threshold for the
article may be defined. For example, a thirty day threshold may be
set. When thirty days has passed, as determined by the tag or the
monitoring terminal, the tag may be configured to, or the
monitoring terminal may direct the tag to, modify or suggest
modification of the price of the article. Additionally, or
alternatively, the tag may alarm when the threshold is reached
indicating to sales personnel that the tag should be moved to the
clearance rack. The price may also be modified based on the sales
of related products. For example, if sales of a particular product
have been increasing, the price could be raised.
[0178] Another example marketing application may involve a tag
being associated with, or assigned to, a specific customer
(customer tag). In this regard, the customer tag may be permanently
assigned to a customer (e.g., the customer leaves the retail store
with the tag), or the tag may be temporarily assigned to a customer
upon visiting the retail store (e.g., the customer returns the tag
upon leaving the store). The tag and/or the monitoring system may
be configured to store profile information about the customer in
association with the tag. In this regard, the customer's profile
information may be stored on the tag or at the monitoring terminal.
In some example embodiments, the tag may be configured to
wirelessly interface with a cell phone to retrieve profile
information. The profile information may include the customer's
name, age, gender, home address, phone numbers, credit card
numbers, credit information, purchasing preferences, and the
like.
[0179] The profile information may also include information
indicative of a customer loyalty level. In this regard, based on
the customer loyalty level, various loyalty program features may or
may not be available to the customer. For example, tags associated
with a customer having a particular customer loyalty level may be
configured to allow a customer to use the self check out lane at a
retail store, open a display case without the assistance of store
personnel, open a security device that protects a product, purchase
a product using pre-stored credit card information, de-commission
security tags associated with a purchased product, and the
like.
[0180] The customer tag may also be configured to provide for
tracking and positioning the customer in the store. Further, the
customer tag may be configured to receive, for example via the
monitoring system, a product list (e.g., a grocery list), and the
customer tag may assist the customer in locating the products on
the list. The product list may be provided to the monitoring system
via, for example, the monitoring system's internet connection. In
this regards, the product list may have been created remotely from,
e.g., the user's home computer running a web application, cellular
phone, and/or any other remote device. For example, the monitoring
system can provide real-time inventory data associated with a
particular store and the remote device can enable the user to
reserve one or more particular products for pick-up and/or purchase
at the store.
[0181] According to various example embodiments, a tag, such as a
tag configured for security functionality, marketing functionality,
inventory functionality, or as a key (e.g., a manager's key) may be
configured to provide for assisting an individual with locating
another tag and the associated product. In this regard, a locator
tag, in the possession of an individual attempting to locate a
target tag, may be configured to provide a user with an indication
of the where the target tag is located or how far the target tag is
away from the locator tag. The locating tag and/or the target tag
may be configured to provide audible and/or visual feedback to the
user to indicate the location of the target tag. For example, the
locating tag and/or the target tag may be configured to output
audible beeps or clicks (similar to the sound of a Geiger counter),
the frequency of which may increase as the locating tag moves
closer to the target tag. The output may be based on locating that
is performed via the ping nodes described above, or via signal
strength detection directly between the locating tag and the target
tag.
[0182] As mentioned above, tag location assistance functionality,
such as the Geiger counter-type functionality described above may
be implemented in a number of applications. In another example, a
locator tag, such as a tag configured as a manager's key, may be
used to locate tags that have reached a threshold battery charge
level. A tag with a low battery level, where the tag includes
battery monitoring circuitry (e.g., via a processor) may be
configured to alarm to indicate the low battery condition.
Additionally, a tag with low battery level may be configured to
provide a wireless signal indicating the low battery condition. The
wireless signal may be detected by the locator tag and the locator
tag may be configured to provide an indication of the location of
the low battery level to a user of the locator tag. According to
some example embodiments, tags near a low battery level tag may be
configured to relay the low battery level indication via a wireless
signal to neighboring tags, and the neighboring tags may report the
low battery power condition to provide for locating the low battery
level tag, even after the low battery level tag can no longer
communicate.
[0183] With respect to inventory applications, the monitoring
system manager 256 may be configured to track inventory generally,
as well as track the location of inventory via tags. The monitoring
system manager 256 may be configured to track inventory by
monitoring and logging status signals provided by the tags, in
addition to commissioning and decommissioning activities.
[0184] The monitoring system manager 256 may also assist in
locating particular inventory to, for example, assist in a sale.
The monitoring system manager 256 may be configured to receive
requests for a particular product (e.g., brown slacks, waist size
32, in-seam length 30) and communicate with tags that meet the
criteria of the request to cause the tags to alarm. An alarm in
this regard, may be a subtle, soft audio alarm that would assist a
sales person and a customer in locating the desired product.
[0185] Another example inventory application may involve the
monitoring system's interaction with totes. A tote may be a
shipping container, such as a plastic shipping container, that can
hold smaller, and often higher value, products, such as
pharmaceuticals, makeup, batteries, film, jewelry, and the like.
Totes may be loaded at a warehouse, or another store, and shipped
to a destination store. A tote may include a mechanical locking
mechanism that requires, for example, a magnetic key or mechanical
interaction with a key, to open the tote and access the products
inside the tote. In some example embodiments, a tote may also
include a configurable monitoring device configured as a tote
tag.
[0186] A tote tag may be used for locating the tote, similar to the
manners described above. A tote tag may also be configured to
detect the presence of tags, and associated products within the
tote. In this manner, a tote tag may operate similar to a node,
with respect to the tags stored within the tote. In some
embodiments, the tote tag may maintain an inventory of the products
within the tote by virtue of communication with each respective
tagged product in the tote and the extraction and/or storage of
product related information associated with each respective tag. As
the tote moves from the warehouse to a destination store, the
inventory information may be verified at both locations to ensure
that the contents of the tote have not been tampered with or
stolen.
[0187] The tote tag may also interface with a key, such as a
manager's key. In this regard, the key may be enabled to deactivate
security functionality of the tote tag, such as alarming. The tote
tag may be configured to alarm if an attempt is made to open the
tote without the key or with an unapproved key. The tote tag may
also alarm if communication is lost with the tag of one or more of
the tagged products within the tote. A key may be configured to
interface with the tote tag, either directly or through the
monitoring system, to deactivate, or activate, the tote tag's
alarming functionality. The monitoring system, or the tote tag may
be configured to manage access to the contents of the tote by, for
example, maintaining a list identifying the particular keys or the
types of keys (e.g., high level manager's key) that have been
enabled to open the tote. In the event that an unapproved key is
used, or is attempted to be used, for opening a tote, the tote tag
may alarm.
[0188] Based on the forgoing, FIG. 14 illustrates an example method
for managing configurable monitoring devices in accordance with
various example embodiments of the present invention that may be
implemented by the monitoring system manager 256. At 1400,
configuration information for a configurable monitoring device may
be generated that defines a role for the target configurable
monitoring device. Specific parameters such as rules, alarming
conditions, alarming responses, attribute information, and the like
may be defined and included in the configuration information. At
1410, the configuration information may be provided to a target
configurable monitoring device via, for example, a wireless network
connection. The target configurable monitoring device may receive
and store the configuration information and subsequently operate
within the role defined by the configuration information. If the
configuration information defines the role of a node or a gateway,
role-based communications may be received from, and transmitted to,
the node or gateway during the operation of the configurable
monitoring device as a node or gateway.
[0189] If the configuration information defines the role of a tag,
a commission signal may subsequently be provided to commission the
tag at 1430. Subsequently, role-based communications may be
received from, and transmitted to, the tag at 1440 during the
operation of the configurable monitoring device as a tag. The tag
may later be provided a decommission signal to decommission the tag
1450. Once decommissioned, the tag may await re-commissioning at
1430 by providing another commission signal.
[0190] FIGS. 13 and 15-17 illustrate example windows for displaying
aspects of a user interface that may be implemented on a monitoring
terminal. FIG. 13 illustrates an example window 1300 displaying a
rendered representation of a monitoring system. The tag map 1310
illustrates an example sales floor for a retail environment. The
tag map 1310 includes location-based representations of nodes
(referred to as "hubs") that are positioned at various locations
throughout the sales floor. The nodes are uniquely identified by a
label (e.g., "Hub 14") followed by an associated tag count in
parentheses, indicating the number of nearby tags (or tags within
range of the signals (e.g., ping signals) being provided by the
nodes. When the monitoring terminal determines, based on
communications from the tags or the nodes, that a tag has moved,
such that the tag is disassociated with a first node and newly
associated with a second node, the tag count may be decremented at
first node and incremented at the second node. The tag map 1310
also depicts POS nodes (e.g., "Pos2", "Pos 3", etc.). Near the
entry area a gate node, "Gate1", is depicted which is configured to
protect the entry/exit area. The tag map 1310 also includes a
gateway node, "Root0" configured to interface with an external
network, to which the monitoring terminal may be connected.
[0191] The example window 1300 also includes a tag tree 1320. The
tag tree 1320 includes a listing of the nodes that are members of
the monitoring system. A node that has tags within range, such as
Hub16, may be expanded to display entries for each tag that is
currently within range of, or otherwise associated with the node.
As tags move form node to node, the tag tree 1320 may be updated to
show the current associations between the tags and the nodes. The
tag tree 1320 also includes a status legend 1321 for describing the
status of the tags or nodes. In this regard, the monitoring
terminal may be configured to highlight, for example, an alarming
tag red, an unresponsive tag purple, and a low battery tag yellow,
or some other color/highlighting scheme may be employed.
[0192] The example window 1300 also includes an event log 1330. The
information depicted in the event log may be linked to the
currently selected item in the tag tree 1320. As such, event
information for the selected tag may be displayed. A time stamp may
be associated with each event. Example events may include tag
movement between node events, alarm events, failed communications
events, tamper events, low battery events, etc.
[0193] FIG. 15 illustrates an example tag information window 1500
for attribute information associated with a tag or node. The
example tag information window 1500 depicts attribute information
for a tag. An image 1510 of an article to which the associated tag
is affixed may be provided in the example tag information window
1500. Further, additional attribute information may be provided in
the tabular area 1520, such as the tag address, the current battery
level, the currently associated hub, a description of the affixed
article, a stock-keeping unit (SKU) value, the time/date of the
last report from the tag, the time/date of the last transition
between nodes for the tag, the time/date of the last commission of
the tag, the time/date of the last decommission of the tag, and the
like.
[0194] FIG. 16 illustrates an example hub information window 1600.
The hub information window 1600 may include a tabular area 1610
that includes information about the hub (or node). Example hub
attribute information may include the hub address, the hub label or
description, the battery level for the hub, the current number of
associated tags, the date/time that the hub last reported, for
example, to the monitoring terminal, and the like.
[0195] FIG. 17 illustrates an example battery level window 1700 for
a tag. The battery level window may include a graphical
representation of the past and current battery level on a line
graph. The graph may be provided with respect to voltage on the
y-axis, and time on the x-axis. A threshold battery level 1730 may
also be included on the graph, which may indicate the battery level
that would place the tag in a low battery status.
[0196] Many of applications and functionality described herein
utilize wireless communications between the monitoring terminal 62
and the configurable monitoring devices. In addition to, or in lieu
of, communicating with individual tags via this air interface, the
communications interface 252 of the monitoring terminal 62 may
communicate with a separate bridge device to forward and receive
information and data to and from configurable monitoring devices.
The bridge device may operate unilaterally or in conjunction with
the monitoring terminal 62 to manage configurable monitoring
devices. The bridge device, which may be a hand-held scanner-type
device, can be configured to operate in one of two communication
modes to interface with tags affixed to retail products for
security, inventory, and other purposes. In a first communication
mode, the bridge device is configured to communicate with tags that
are configured for RFID type communications. For example, the tags
and the bridge device may be configured to communicate in
accordance with the Generation II Ultra High Frequency (UHF) RFID
standards. In a second communication mode, the bridge device is
configured to communicate with tags using a protocol built on the
IEEE 802.15.4 standard, such as ZigBee or a proprietary protocol
built on IEEE 802.15.4. To support the dual modes of communication,
the bridge device may include a transmitter/receiver and an antenna
configured to support IEEE 802.15.4, as well as, a
modulator/demodulator, and possibly a separate antenna, to support
RFID communications. According to some example embodiments, the
bridge device may include a configurable monitoring device
configured to operate a bridge device. Via seamless transition
between the two communications modes, a single, possibly hand-held,
bridge device can operate as a tag reader, and may be used to
communicate with disparate types of tags. Communications with the
tags may be performed for a variety of reasons, such as for
counting inventory, price checking, tag firmware upgrades, tag
encoding, and the like.
[0197] The flexible nature of the configurable monitoring device
and the monitoring system of embodiments of the present invention
may enable dynamic configuration of configurable monitoring devices
within a network to introduce robust capabilities for providing
services and functionality and, for providing updates to existing
capabilities with updated configuration information. Embodiments of
the present invention may be implemented by various means, such as
hardware, firmware, processor, circuitry and/or other device
associated with execution of software including one or more
computer program instructions. For example, one or more of the
procedures or activities described above may be embodied by
computer program instructions. In this regard, the computer program
instructions which embody the procedures or activities described
above may be stored by a memory device of an apparatus employing an
embodiment of the present invention and executed by a processor in
the apparatus. As will be appreciated, any such computer program
instructions may be loaded onto a computer or other programmable
apparatus (e.g., hardware) to produce a machine, such that the
resulting computer or other programmable apparatus embody means for
implementing the functions specified in the corresponding procedure
or activity. These computer program instructions may also be stored
in a computer-readable storage memory (as opposed to a
computer-readable transmission medium such as a carrier wave or
electromagnetic signal) that may direct a computer or other
programmable apparatus to function in a particular manner, such
that the instructions stored in the computer-readable memory
produce an article of manufacture the execution of which implements
the function specified in the corresponding procedure or activity.
The computer program instructions may also be loaded onto a
computer or other programmable apparatus to cause a series of
operational steps to be performed on the computer or other
programmable apparatus to produce a computer-implemented process
such that the instructions which execute on the computer or other
programmable apparatus provide steps for implementing the functions
specified in the corresponding procedure or activity described
above.
[0198] Also, the terms "substantially," "about," "approximately" or
the like as used herein are intended to reflect variances in a
value or relationship that may be due to various factors such as
the effects of environmental conditions, common error tolerances,
or the like. It should further be understood that although some
values or other relationships may be expressed herein without a
modifier, these values or other relationships may also be exact or
may include a degree of variation due to various factors such as
the effects of environmental conditions, common error tolerances,
or the like.
[0199] Many modifications and other embodiments of the inventions
set forth herein will come to mind to one skilled in the art to
which these inventions pertain having the benefit of the teachings
presented in the foregoing descriptions and the associated
drawings. Therefore, it is to be understood that the inventions are
not to be limited to the specific embodiments disclosed and that
modifications and other embodiments are intended to be included
within the scope of this disclosure. Moreover, although the
foregoing descriptions and the associated drawings describe
exemplary embodiments in the context of certain exemplary
combinations of elements and/or functions, it should be appreciated
that different combinations of elements and/or functions may be
provided by alternative embodiments without departing from the
scope of this disclosure. In this regard, for example, different
combinations of elements and/or functions than those explicitly
described above are also contemplated as may be set forth in some
of this disclosure. Although specific terms are employed herein,
they are used in a generic and descriptive sense only and not for
purposes of limitation.
* * * * *