Patent Description:
Various assets, such as corded and cordless power tools, may be useful on a typical construction jobsite. These assets may include tools such as drill machines, saws, hammers, grinders and sanders, vacuum cleaners, drivers, measuring tools, and/or other types of tools and tool accessories. Often, assets are moved between locations (e.g., a construction jobsite, a warehouse, a container, etc.) by different groups of people. Assets are typically valuable resources, and it is beneficial to track the status of a particular asset in order to improve the overall efficiency of the jobsite. Accordingly, various systems and methods may be utilized to track the location and/or the real-time status of a particular asset within a fleet of tools owned by a particular entity. In particular, assets may be tracked with tags that periodically beacons information to a remote gateway. One or more gateways may continuously and/or periodically scan for beacon signals from tags within the vicinity, and may send information received from a tag to a remote asset management system. In certain situations, a gateway may utilize large amounts of power in order to function continuously and/or periodically.

Accordingly, it is beneficial to provide for systems and methods for reducing the power consumption of a gateway by dynamically optimizing the operation and function of the gateway.

In a first embodiment, a system includes one or more assets disposed within a physical location. Each asset is coupled to a wireless tag, and each wireless tag is configured to wirelessly transmit beacon signals at predetermined intervals. The system also includes a gateway configured to cover the range of the physical location. The gateway is configured to scan the physical location to identify beacon signals transmitted by each of the wireless tags and receive the beacon signals from each wireless tag at the predetermined intervals. The gateway is also configured to dynamically optimize a function of the gateway by adjusting a current total scan time based at least in part on the number of beacon signals received from previously unknown or new wireless tags disposed within the physical location. Adjusting the current total scan time comprises decreasing a current scan time of the gateway by an unused scan time, wherein the unused scan time is a duration of time during which the gateway does not receive any beacon signals from a previously unknown or new wireless tag within the range.

Turning now to the drawings, <FIG> is a tool system having a plurality of assets <NUM> disposed in a plurality of locations, where each of the plurality of assets is tracked with a remote asset management platform <NUM>. The plurality of assets <NUM> may be owned by a particular entity (e.g., a corporation, an individual, an organization, etc.) or by several entities. For example, assets may include tools such as power tools (e.g., rotary hammers, drives, screw drivers, saws, grinders, etc.), drill machines, vacuum cleaners and accessories, measuring tools (e.g., detection tools, lasers, layout tools, surveying equipment, etc.), direct fastening tools, diamond cutting and drilling tools, tool accessories (e.g., tool boxes, kits, computing devices, etc.), and/or other types of tools and tool accessories that may be utilized within the construction industry. While the construction industry is utilized as an exemplary embodiment, it should be noted that the present embodiments may be applicable in other industries. In certain embodiments, assets may include any product, resource, or accessory utilized in an industrial setting that may be a valuable resource owned by the entity. For example, the present embodiments may be utilized to track assets in the manufacturing, energy, agriculture, transportation and logistics, or services industries. Assets in such industries may include, for example, shipping equipment, machinery, vehicles, telecommunications equipment, hardware, or any resource that may be a valuable asset for an entity.

In certain embodiments, the asset <NUM> may be removably attached to a wireless tag <NUM>. Wireless tags <NUM> may be active or passive tags that are configured to wirelessly transmit and receive information to/from a remote computing device, such as a gateway <NUM>. The wireless tag <NUM> may be registered and assigned to the asset <NUM>, and the association between the tag and asset may be stored within the remote asset management platform <NUM>. In certain embodiments, the registration and assigning process may be processed by the manufacturer and/or by the entity who acquires the asset. In certain embodiments, the entity may purchase or acquire an asset already attached, registered, and assigned to the wireless tag <NUM>. The process of registering a tag with a particular asset may be done with any application and computing device that can identify tags and assets. In certain embodiments, tags may be removed and replaced, so that a damaged tag may be replaced, reused on a different asset, or discarded. Additionally, tags may be re-registered with a different asset, and the new association between the tag and the new asset may be stored within the remote asset management platform <NUM>.

In certain embodiments, the tags <NUM> may be removably attached to an external surface of the assets <NUM>, or they may be attached to an accessory associated with the assets <NUM>, such as a tool case or container. In certain embodiments, the tags <NUM> may be mechanically attached to the assets <NUM> via any attachment means (e.g., adhesive, tape, snap-on, magnet features, screws, nails, press-fit feature, etc.). In certain embodiments, the tags <NUM> may be disposed within a cavity located on an external surface of the assets <NUM>. In certain embodiments, the tags <NUM> may be disposed within a housing of the asset <NUM>. In particular, the wireless tags <NUM> may be enabled to transmit and receive information to/from the gateway <NUM> via one or more different wireless modes of operation, such as, but not limited to, any form of radio waves, Bluetooth, Near Field Communication (NFC), Wifi, ZigBee, Z-Wave, BLE, LoRa, LoRaWAN, Sigfox, any wireless transmission utilizing radio waves, etc. In certain embodiments, a first wireless tag <NUM> may communicate in a first mode of wireless communication (e.g., WiFi) while a second wireless tag <NUM> may communicate in a second mode of wireless communication (e.g., BLE). In certain embodiments, one wireless tag <NUM> may be configured to communicate with one or more modes of wireless communication. In certain embodiments, the tags <NUM> may utilize a single mode of wireless communication (e.g., BLE), and may be configured to continuously transmit beacon signals at pre-determined intervals of time (e.g., <NUM> seconds, <NUM> seconds, <NUM> seconds, <NUM> seconds, <NUM> minute, <NUM> minutes, <NUM> minutes, <NUM> minutes, <NUM> hour, <NUM> hours, <NUM> hours, <NUM> hours, <NUM> day, <NUM> days, or any interval that may be suitable to preserve battery life without compromising asset tracking).

In certain embodiments, one or more gateways <NUM> may be disposed around a plurality of tags <NUM>. For example, in certain embodiments, a gateway <NUM> may be utilized to cover the range of a particular geographical location (physical location), such as a portion of a construction jobsite, an entire jobsite, a warehouse, a container, (e.g., a shipping container, vehicle, mode of transportation, etc.), a worker, a transportation vehicle, etc. In particular, the asset management platform <NUM> may include a logical location of the gateway <NUM>, so that tags <NUM> and assets <NUM> proximate to a particular gateway <NUM> may be tracked or monitored. In particular, a logical location may differ from an actual or a geographical location having tangible geocoordinates. For example, a logical location stored within the asset management platform <NUM> may be a user-defined description of a physical location that assets owned by the entity are brought to, removed from, or stored within. Accordingly, the logical location may be a utility for the entity desiring to keep track of their assets' physical location within their enterprise. A logical location may be a virtual representation of an actual, physical location, and may be represented by the wireless range provided by the gateway <NUM>.

Further, in certain embodiments, the gateway <NUM> may be assigned or preassigned to a logical location, such as "vehicle X" or "container B," which may remain constant despite the changing geolocation. Accordingly, in certain embodiments, the gateway <NUM> may be associated with a physical location and a logical location within the remote asset management platform <NUM>. Assets <NUM> (coupled to tags <NUM>) brought within or removed from the proximity of the gateway <NUM> are monitored and recorded, and this information is stored within the asset management platform <NUM>, as further described in detail below.

In certain embodiments, the gateway <NUM> may be configured to receive one or more beacon signals transmitted by one or more tags <NUM> within the vicinity of the gateway <NUM>, or within a predetermined geographic distance from the gateway <NUM>. The gateway <NUM> may be configured to receive and process the beacon signals, and transmit the information to the remote asset management platform <NUM>. In certain embodiments, the gateway <NUM> may be configured to transmit the information to the remote asset management platform <NUM>, which is a cloud-based computing device <NUM>, via WiFi (e.g., Institute of Electrical and Electronics Engineers [IEEE] <NUM>. 11X, cellular conduits (e.g., high speed packet access [HSPA], HSPA+, long term evolution [LTE], WiMax), personal area networks (PANs), WAN, and LAN and the like. In certain embodiments, the remote asset management platform <NUM> may be run on a computing device, such as one or more local or physical computing devices independent of a cloud-based server. In this manner, the gateway <NUM> may include edge computing capabilities that allow for it to gather, analyze and transmit information to the remote asset management platform <NUM>. The cloud-based computing device <NUM> may be a service provider providing cloud analytics, cloud-based collaboration and workflow systems, distributed computing systems, expert systems and/or knowledge-based systems. In certain embodiments, the cloud-based computing device <NUM> may be a data repository that is coupled to an internal or external global database <NUM>.

Further, in certain embodiments, the global database <NUM> may allow computing devices <NUM> to retrieve information stored within for additional processing or analysis. Indeed, the cloud-based computing device <NUM> may be accessed by a plurality of systems (computing devices <NUM> and/or computing devices from back offices/servers <NUM>) from any geographic location, including geographic locations remote from the physical locations of the systems. Accordingly, the cloud <NUM> may enable advanced collaboration methods between parties in multiple geographic areas, provide multi-party workflows, data gathering, and data analysis, which may increase the efficiency of remotely tracking and keeping an inventory of assets owned by a particular entity in real-time.

In certain embodiments, the gateway <NUM> may be continuously scanning for beacon signals from tags <NUM> (coupled to assets <NUM>) that are brought within or removed from the proximity of the gateway <NUM>. The received information is transmitted and stored within the asset management platform <NUM>. In certain embodiments, the information that is transmitted from the tags <NUM> to the asset management platform <NUM> via the gateway <NUM> include, for example, a timestamp, operating parameters of the first asset <NUM>, status information, unique identification information of the asset and/or battery, state of health (SOH) or state of charge (SOC) of the battery, or any other information that may be relevant to the asset or the status of the asset. In particular, if the gateway <NUM> is coupled to an external power source <NUM>, the gateway <NUM> may be able to scan continuously to locate and record all the beacon signals from its range. The amount of time needed to locate and record all the beacon signals may depend on the number of tags <NUM>, the distance of each tag <NUM> from the gateway <NUM>, the distribution of the tags <NUM> within the range of the gateway <NUM>, and other similar factors. For a gateway <NUM> coupled to an unlimited or external power source <NUM>, the gateway <NUM> may continue to scan regardless of how much time it takes to locate and record all the beacon signals. For a gateway <NUM> that utilizes an internal power source <NUM> (such as a rechargeable battery), continuous scanning may drain the battery and reduce the efficiency or accuracy of the scanning. Accordingly, the present embodiments describe systems and methods for reducing the power consumption of the gateway <NUM> by dynamically optimizing the operation and function of the gateway <NUM>, as further described in detail below.

In certain embodiments, the gateway <NUM> may include a processor <NUM> configured to execute instructions stored on a memory <NUM>, communications circuitry <NUM>, and the internal power source <NUM>. The internal power source <NUM> may be a rechargeable battery that may be rechargeable by an external power source <NUM> (such as a power wall outlet, a vehicle power source, another external battery, etc.). In certain embodiments, the internal power source <NUM> may be utilized when the external power source <NUM> is unavailable. The communications circuitry <NUM> may be configured to receive information from the tags <NUM> and may transmit information to the asset management platform <NUM> via a wired or wireless connection. For example, the wireless protocols utilized may include WiFi (e.g., Institute of Electrical and Electronics Engineers [IEEE] <NUM>. 11X, cellular conduits (e.g., high speed packet access [HSPA], HSPA+, long term evolution [LTE], WiMax), personal area networks (PANs), and the like.

In particular, the processor <NUM> may be configured to dynamically optimize the operation and function of the communications circuitry <NUM> based on various factors, such as, for example, the amount of power remaining within the internal power source <NUM>. In certain embodiments, the gateway <NUM> may be configured to optimize the power consumption by dynamically adapting <NUM>) the length of the scan time based on the time it takes to scan all tags <NUM> and receive all beacon signals within its vicinity and/or <NUM>) the frequency of the scans based on the rate of change in the inventory of the assets <NUM> and tags <NUM> within the vicinity of the gateway <NUM>. In certain embodiments, in order to dynamically optimize the power consumption by the gateway <NUM> without compromising scanning accuracy and efficiency, the gateway <NUM> may be configured to adjust the total scan time based on the amount of beacon signals received from known and unknown tags <NUM> within the vicinity of the gateway <NUM>, as further described with respect to <FIG>. In certain embodiments, in order to dynamically optimize the power consumption by the gateway <NUM> without compromising scanning accuracy and efficiency, the gateway <NUM> may be configured to adjust the frequency of the scanning, as further described with respect to <FIG>. In certain embodiments, in order to dynamically optimize the power consumption by the gateway <NUM> without compromising scanning accuracy and efficiency, the gateway <NUM> may be configured to terminate the scan time prematurely and/or extend the scan time based on the beacon signals received within a given beaconing interval, as further described with respect to <FIG>.

The asset management platform <NUM> may be configured to record the activities of the assets <NUM> based on the information received from the tags <NUM> via the gateway <NUM>. In certain embodiments, the asset management platform <NUM> maintains a historical record of events for each asset <NUM>. As an example, when an asset <NUM> is physically removed from a warehouse, the gateway <NUM> assigned to the warehouse recognizes the missing asset by recognizing that it has not received a beacon signal from the asset <NUM> for a period of time. The gateway <NUM> records the removal of the asset <NUM> from the warehouse as an "event. " As a further example, when a second gateway (such as one assigned to a vehicle) recognizes a new asset <NUM>, the second gateway records an event indicating that the same asset <NUM> is has been added to the vehicle, and therefore, within the vehicle.

Accordingly, the asset management platform <NUM> records and analyzes information received from one or more gateways <NUM>, to provide real-time information about the logical location of a particular asset. In certain embodiments, the asset management platform <NUM> may be configured to determine whether the assets <NUM> are present or missing (not found) at different locations. For example, based on events recorded from two gateways <NUM>, the asset management platform <NUM> may be configured to match the location of an asset <NUM> or group of assets <NUM> with the location of gateways to identify when an asset or group of assets are not found at their expected locations but are found at unexpected locations and/or brought back to their original expected locations. As a further example, if an asset is not scanned by any gateway <NUM> for a period of time, the asset management platform <NUM> may be configured to generate an alert indicating that the asset has not been identified recently. The asset management platform <NUM> may also be configured to generate an alert or notification if this asset is registered by the gateway <NUM> again. In this manner, the asset management platform <NUM> may be configured to remotely track and keep an inventory of assets owned by a particular entity (or multiple, independent entities) over a plurality of different locations.

<FIG> is a block diagram of an embodiment of the gateway <NUM> of <FIG>, where the gateway <NUM> dynamically optimizes the function and reduces power consumption by decreasing a current total scan time <NUM> of the gateway <NUM>. In certain embodiments, the scan time of the gateway <NUM> may be a predetermined or preconfigured time (e.g., default scan time) that might be a reasonable estimation of the amount of time the gateway <NUM> would need to receive all the beacon signals from the tags <NUM> disposed within the range of the gateway <NUM>. However, the movement of the assets <NUM> and the tags <NUM> are dynamic - assets <NUM> are frequently brought and removed from the range of the gateway <NUM> and even within the range of the gateway <NUM>. Accordingly, it may be beneficial to include systems and methods for dynamically adapting gateway <NUM> operation to reflect the dynamic environment, thereby reducing power consumption and optimizing gateway function.

In certain embodiments, the current total scan time <NUM> is longer than needed to scan for all the tags <NUM> within the range of the gateway <NUM>. Accordingly, the gateway <NUM> may be configured to optimize function by reducing the current total scan time <NUM>. For example, the current total scan time <NUM> may include a required scan time <NUM>, an unused scan time <NUM>, and a buffer <NUM>. The required scan time <NUM> is the amount of time needed to completely scan for all the tags <NUM> and receive all the beacon signals within the range of the gateway <NUM>. The unused scan time <NUM> may be the amount of time during which the gateway <NUM> did not receive any beacon signals from any new tag <NUM> within the range. The current scan time <NUM> may be the amount of time the gateway <NUM> is actively searching for tags <NUM>, which in this example includes the required scan time <NUM> and the unused scan time <NUM>. The buffer <NUM> may be a predetermined amount of time utilized by the gateway <NUM> to provide for a safeguard against unexpected new beacon signals. In certain embodiments, the gateway <NUM> may be configured to optimize function by reducing the current total scan time <NUM> by the unused scan time <NUM>. Accordingly, a new total scan time <NUM> may include the required scan time <NUM> and the buffer <NUM>. Further, the required scan time <NUM> may be approximately identical to the adjusted scan time <NUM> - such that the gateway <NUM> is optimized and the scan time is adapted to the actual number of tags <NUM> beaconing signals. In this manner, the gateway <NUM> also reduces power consumption by the amount of power it would have otherwise required for the unused scan time <NUM>.

<FIG> is a block diagram of an embodiment of the gateway of <FIG>, where the gateway dynamically optimizes gateway function by increasing the current total scan time <NUM> of the gateway <NUM>. As noted above, it may be beneficial to include systems and methods for dynamically adapting the gateway <NUM> operation to reflect the dynamic movement of assets <NUM> and tags <NUM> between different locations, thereby reducing power consumption and optimizing gateway function.

In certain embodiments, the current total scan time <NUM> is shorter than needed to scan for all the tags <NUM> within the range of the gateway <NUM>. Accordingly, the gateway <NUM> may be configured to optimize function by increasing the current total scan time <NUM>. For example, the current total scan time <NUM> may include the current scan time <NUM> and the buffer <NUM>. The current scan time <NUM> may not be enough time to cover all the beacon signals received from the tags <NUM>, and certain beacons signals may overflow into the buffer time <NUM> (an overflow scan time <NUM>). The required scan time <NUM> is the amount of time needed to completely scan for all the tags <NUM> and receive all the beacon signals within the range of the gateway <NUM>. In this example, the gateway <NUM> identifies that the current scan time <NUM> is too short for the number of tags <NUM> within the range. Accordingly, the gateway <NUM> may be configured to optimize function by increasing the current scan time <NUM> by the overflow scan time <NUM> to cover all beacon signals, such as unknown beacon signals that were received. The new total scan time <NUM> may include the required scan time <NUM> (adapted and extended to include any future overflow of beacon signals <NUM>) and the buffer <NUM>.

In this manner, the gateway <NUM> may be flexible and adaptable to dynamically increase or decrease the current total scan time <NUM> to accommodate a dynamic environment where tags <NUM> (new, unknown, or known) enter and/or leave the range of the gateway <NUM>. The gateway <NUM> may be continuously updating the current total scan time <NUM> to dynamically reflect the environment.

<FIG> is a block diagram of an embodiment of the gateway <NUM> of <FIG>, where the gateway <NUM> dynamically optimizes function by increasing or decreasing a current scan frequency by decreasing or increasing interval <NUM>. In certain embodiments, the scan frequency of the gateway <NUM> may be a predetermined or preconfigured interval that might be a reasonable estimation of the amount of time between scans that the gateway <NUM> would need to receive all the beacon signals from the tags <NUM> disposed within the range. However, the movement of the assets <NUM> and the tags <NUM> are dynamic - assets <NUM> are frequently brought and removed from the range of the gateway <NUM> and even within the range of the gateway <NUM>. Accordingly, it may be beneficial to include systems and methods for dynamically adapting gateway <NUM> operation to reflect the dynamic environment, thereby reducing power consumption and optimizing gateway function.

In certain embodiments, the scan frequency may be decreased by increasing the interval <NUM>, so that a greater amount of time passes between each scan time of the gateway <NUM>, when the gateway <NUM> detects little or no variability <NUM> (e.g., little or no change) in the beacon signals received from the tags <NUM>. For example, when the gateway <NUM> does not receive any new beacon signals (from new tags <NUM> entering the range, a different number of beacon signals, missing beacon signals from tags previously within the range, a change in information, etc.), the scan frequency may be decreased by increasing the interval <NUM> to reduce power consumption without compromising the status of the dynamic inventory of assets <NUM>. Further, in certain embodiments, the scan frequency may be increased by decreasing the interval <NUM>, so that less time passes between each scan time of the gateway <NUM>, when the gateway <NUM> detects increased variability (e.g., dynamic change within the inventory and assets <NUM> entering and leaving the range, changes in information, etc.) in the beacon signals received from the tags <NUM>.

<FIG> is a block diagram of an embodiment of the gateway <NUM> of <FIG>, where the gateway <NUM> dynamically optimizes gateway function by terminating a scan time <NUM> of the gateway <NUM> relative to a default scan time <NUM>. In certain embodiments, the gateway <NUM> may be configured to prematurely terminate the scan time <NUM> if the gateway <NUM> does not detect any new tags <NUM> within the range after a predetermined number of scan periods <NUM>. For example, in the illustrated embodiment, the gateway <NUM> does not receive any new beacon signals from any new or unknown tags <NUM> for two consecutive scan periods <NUM>. A new beacon signal may be a beacon signal from any new or unknown tag that has previously not been seen during the scan time <NUM>. Accordingly, the gateway <NUM> reduces the default scan time <NUM> to the scan time <NUM> and enters sleep mode. In certain embodiments, the gateway <NUM> may enter sleep mode after <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> or more periods <NUM> where the gateway <NUM> does not receive any new beacon signals. In certain embodiments, the gateway <NUM> may enter sleep mode after "X" periods <NUM> if the gateway <NUM> does not receive any new beacon signals from previously unknown tags <NUM> (e.g., no new tags <NUM> have entered the range for "X" periods). Accordingly, it may be beneficial to include systems and methods for reducing power consumption of the gateway <NUM> to reflect the dynamic environment by prematurely terminating the scan time <NUM>.

<FIG> is a block diagram of an embodiment of the gateway <NUM> of <FIG>, where the gateway <NUM> dynamically optimizes gateway function by extending the scan time <NUM> of the gateway <NUM> relative to the default scan time <NUM>. In certain embodiments, the gateway <NUM> may be configured to extend the scan time <NUM> if the gateway <NUM> detects variability in the dynamic environment of assets <NUM> within the range of the gateway <NUM>. For example, in the illustrated embodiment, the gateway <NUM> continues to receive new beacon signals from new or previously unknown tags <NUM> at the end of the default scan time <NUM> and extends scan time to <NUM> such that the gateway <NUM> has not received any new beacon signals in two consecutive scan periods <NUM>. In certain embodiments, the gateway <NUM> may extend default scan time <NUM> to scan time <NUM> till it does not receive any new beacons for "X" consecutive number of scan periods <NUM> where X can be <NUM>, <NUM>, <NUM>, <NUM> or more scan periods <NUM>. In certain embodiments, the gateway <NUM> increases or extends the default scan time <NUM> to the scan time <NUM> by adding <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM> or more periods <NUM> and monitoring that it has not received any new beacons during the last "X" consecutive scan periods. In certain embodiments, gateway may also use a maximum scan time <NUM> that can be any value greater than the default scan time <NUM> such that gateway terminates scanning if current scan time <NUM> becomes equal or higher than maximum scan time <NUM>. Accordingly, it may be beneficial to include systems and methods for reducing power consumption of the gateway <NUM> to reflect the dynamic environment by terminating or extending the scan time <NUM>, as necessary.

Claim 1:
A system, comprising:
one or more assets (<NUM>) disposed within a physical location, wherein each asset (<NUM>) is coupled to a wireless tag (<NUM>), and wherein each wireless tag (<NUM>) is configured to wirelessly transmit beacon signals at predetermined intervals; and
a gateway (<NUM>) configured to cover the range of the physical location, and wherein the gateway (<NUM>) is configured to:
scan the physical location to identify beacon signals transmitted by each of the wireless tags (<NUM>);
receive the beacon signals from each wireless tag (<NUM>) at the predetermined intervals; and
dynamically optimize a function of the gateway (<NUM>) by adjusting a current total scan time based at least in part on the number of beacon signals received from previously unknown or new wireless tags disposed within the physical location,
wherein adjusting the current total scan time comprises decreasing a current scan time of the gateway (<NUM>) by an unused scan time, characterized in that
the unused scan time is a duration of time during which the gateway does not receive any beacon signals from a previously unknown or new wireless tag (<NUM>) within the range.