Systems and methods receive an image of at least part of an environmental layout and at least two geographic feature locations associated with the image. At least two geographic locations are determined, each corresponding to a respective one of the at least two geographic feature locations and a map scale is determined for the images based on the at least two geographic feature locations and the at least two geographic locations. The map scale allows conversion between points on the image and geographic locations. The image and the map scale are used to display a location interface on a client device that allows a user to search the environmental layout for an asset associated with a tracking node, where the location interface graphically displays graphical elements indicative of communication recency between the tracking tag and one or more infrastructure nodes.
Legal claims defining the scope of protection, as filed with the USPTO.
receiving location information from at least two infrastructure nodes having location capability; receiving an image of at least part of an environmental layout; receiving at least two geographic feature locations associated with the image, the geographic feature locations being defined by user interaction with a client device displaying the image to identify points of each of the at least two infrastructure nodes on the image; determining at least two geographic locations each corresponding to a respective one of the at least two geographic feature locations using the received location information; determining a vector between the at least two geographic locations; determining a pixel distance between the at least two geographic feature locations in the image; determining a map scale for the image based on the at least two geographic feature locations, the at least two geographic locations corresponding to the at least two geographic feature locations, the vector, and the pixel distance; displaying, according to the map scale, the environmental layout on a client-device mapping interface, wherein the map scale allows conversion between any point on the environmental layout as displayed on the mapping interface and a geographic location; and overlaying a node graphical element representing one of the at least two infrastructure nodes on the mapping interface displaying the environmental layout. . A method, comprising:
claim 1 . The method of, wherein the at least part of the environmental layout comprises at least part of a floorplan.
claim 1 . The method of, the image being captured by, and received from, the client device.
claim 1 . The method of, the map scale defining an orientation, a reference, and a scaling factor for the image.
claim 4 . The method of, using at least the image and the map scale to form a geographic layout of an area at least partially represented by the image.
claim 5 retrieving an infrastructure location for each of at least one infrastructure node in an environment; retrieving at least part of the geographic layout based at least in part on the infrastructure location; generating the mapping interface based at least in part on the at least part of the geographic layout; and generating the node graphical element for each of the at least one infrastructure node based on the map scale. . The method of, further comprising:
claim 5 determining a tracking node corresponding to an asset to be found; identifying at least one infrastructure node having communicated with the tracking node; determining, for each of the at least one infrastructure node, a communication recency between the infrastructure node and the tracking node, wherein a priority order of values for the communication recency from highest to lowest is: current communication, recently communicated, and past communication; retrieving an infrastructure location for each of the at least one infrastructure node; retrieving at least part of the geographic layout based on the infrastructure location; generating a locating interface based on the at least part of the geographic layout; generating the node graphical element for each of the at least one infrastructure node based on the map scale, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the node graphical element on the locating interface based on the infrastructure location and the map scale. . The method of, further comprising:
claim 7 retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region and the map scale, wherein a characteristic of the detection range graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based at least in part on the infrastructure location and the map scale. . The method of, further comprising:
claim 7 retrieving a detection region for each of the at least one infrastructure node; when the communication recency of the at least one infrastructure node is at a highest priority, generating a detection range graphical element based on the detection region and the map scale, wherein a color of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based on the infrastructure location and the map scale. . The method of, further comprising:
claim 7 determining at least two of the at least one infrastructure node having the communication recency of current communication; retrieving a detection region for each of the at least two infrastructure nodes; generating an overlap area graphical element for an overlap area between the detection region of each of the at least two infrastructure nodes; and overlaying the overlap area graphical element on the locating interface based on the infrastructure location and the map scale. . The method of, further comprising:
claim 7 determining a current location of the client device; generating a client device graphical element for the client device; and overlaying the client device graphical element on the locating interface based on the current location and the map scale. . The method of, further comprising:
claim 1 retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region and the map scale; and overlaying the detection range graphical element on the mapping interface based at least in part on the infrastructure location and the map scale. . The method of, further comprising:
receiving an image captured by a client device of at least part of an environmental layout; receiving at least two geographic feature locations associated with the image, the geographic feature locations being defined by user interaction with the client device displaying the image to identify points on the image; determining a vector between at least two geographic locations identified from location information provided by infrastructure nodes corresponding to the at least two geographic feature locations; determining a pixel distance between the at least two geographic feature locations in the image; using the geographic feature locations, the at least two geographic locations corresponding to the at least two geographic feature locations, the vector, and the pixel distance to identify a map scale; generating, based on the image, a geographic layout associated with an area depicted in the image; outputting the geographic layout for use in a client device interface, wherein the map scale allows conversion between points on the image and geographic locations; and overlaying, on the geographic layout using the map scale, a node graphical element representing a location of an infrastructure node. . A method, comprising:
claim 13 . The method of, wherein the client device is the same device running the client device interface.
claim 13 . The method of, the outputting including storing the geographic layout in a cloud server for on-demand access by another client device.
claim 13 receiving an indication of a tracking node to be tracked; determining a location of the tracking node; accessing a location database to retrieve at least part of the geographic layout associated with the determined location; and outputting the associated geographic layout to the client device. . The method of, further comprising:
claim 13 receiving a location of an infrastructure node; and overlaying a graphical representation of the infrastructure node on the geographic layout at a position corresponding to the received location of the infrastructure node. . The method of, further comprising:
determining a tracking node corresponding to an asset to be found; identifying at least one infrastructure node having communicated with the tracking node; determining, for each of the at least one infrastructure node, a communication recency between the infrastructure node and the tracking node, wherein a priority order of values for the communication recency from highest to lowest is: current communication, recently communicated, and past communication; retrieving an infrastructure location for each of the at least one infrastructure node; retrieving at least part of a geographic layout based on the infrastructure location; generating a map scale of the geographic layout based on a pixel distance between geographic feature locations defined by user interaction with a client device displaying the geographic layout to identify points of each of the infrastructure nodes on the geographic layout and a vector between geographic locations of each of the infrastructure nodes, the geographic locations based on location information provided by each of the infrastructure nodes; generating a locating interface based on the at least part of the geographic layout and according to the map scale; generating a node graphical element for each of the at least one infrastructure node, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the node graphical element on the locating interface based on the infrastructure location and the map scale. . A method comprising:
claim 18 retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based at least in part on the infrastructure location. . The method of, further comprising:
claim 19 . The method of, wherein communication between the tracking node at the at least one infrastructure node occurs only when the tracking node is within the detection region of the infrastructure node.
claim 20 . The method of, wherein the infrastructure node determines a range of the tracking node and communicates only when the range indicates the tracking node is within the detection region.
claim 20 . The method of, wherein the infrastructure node broadcasts its detection region and the tracking node communicates with the infrastructure node only when the tracking node determines it is within the detection region.
claim 20 . The method of, wherein the detection region is less than a maximum wireless communication range of the infrastructure node.
claim 18 retrieving a detection region for each of the at least one infrastructure node; when the communication recency of the at least one infrastructure node is at a highest priority, generating a detection range graphical element based on the detection region and the map scale, wherein a color of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based on the infrastructure location and the map scale. . The method of, further comprising:
Complete technical specification and implementation details from the patent document.
This application claims priority to U.S. Patent Application Ser. No. 63/279,332, titled “Improved User Interface and System for Wireless Infrastructure Setup and Asset Tracking, and Method thereof,” filed Nov. 15, 2021, and incorporated herein by reference.
Graphical user interfaces for tracking systems often include maps for guiding users to an object or location. However, typical maps used may not be granular enough to be useful when the user is within a close proximity. Additionally, maps, such as those that are based on satellite imagery, or those for a large area, may not include details of indoor areas or fine details for a layout of an area. It may also be difficult to illustrate the exact location of an object or location in a graphical user interface.
A user interface, method, and system thereof for mapping infrastructure nodes and locating assets in an environment is disclosed. The user interface includes a mapping interface and a locating interface. The locating interface displays locations and detection regions of wireless nodes that have performed wireless communications with an asset node attached to an asset that is being searched for.
In one embodiment, a method includes: receiving an image of at least part of an environmental layout; receiving at least two geographic feature locations associated with the image; determining at least two geographic locations each corresponding to a respective one of the at least two geographic feature locations; determining a map scale for the images based on the at least two geographic feature locations and the at least two geographic locations; and wherein the map scale allows conversion between points on the image and geographic locations.
In another embodiment, a method includes: receiving an image captured by a user device of at least part of an environmental layout; generating, based on the image, a geographic layout associated with an area depicted in the image; and outputting the geographic layout for use in a client device interface.
In another embodiment, a method includes: determining a tracking node corresponding to an asset to be found; identifying at least one infrastructure node having communicated with the tracking node; determining, for each of the at least one infrastructure node, a communication recency between the infrastructure node and the tracking node, wherein a priority order of values for the communication recency from highest to lowest is: current communication, recently communicated, and past communication; retrieving an infrastructure location for each of the at least one infrastructure node; retrieving at least part of a geographic layout based on the infrastructure location; generating a locating interface based on the at least part of the geographic layout; generating a node graphical element for each of the at least one infrastructure node, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the node graphical element on the locating interface based on the infrastructure location.
The present invention is not limited in any way to the illustrated embodiments. Instead, the illustrated embodiments described below are merely examples of the invention. Therefore, the structural and functional details disclosed herein are not to be construed as limiting the claims. The disclosure merely provides bases for the claims and representative examples that enable one skilled in the art to make and use the claimed inventions. Furthermore, the terms and phrases used herein are intended to provide a comprehensible description of the invention without being limiting.
In the following description, like reference numbers are used to identify like elements. Furthermore, the drawings are intended to illustrate major features of exemplary embodiments in a diagrammatic manner. The drawings are not intended to depict every feature of actual embodiments nor relative dimensions of the depicted elements and are not drawn to scale.
In some contexts, the term “agent” may refer to a “node”, and an “agent” or “node” may be adhesively applied to a surface and denoted as a “tape node” or “tape agent”. These terms may be used interchangeably, depending on the context. Further, the “agent” or “node” may have two forms of hierarchy: one depending on the functionality of the “agent” or “node”, such as the range of a wireless communication interface, and another depending on which “agent” or “node” may control another “agent” or “node”. For example, an agent with a low-power wireless-communication interface may be referred to a “master agent”.
In some embodiments, a low-power wireless communication interface may have a first wireless range and be operable to implement one or more protocols including Zigbee, near-field communication (NFC), Bluetooth Low Energy, Bluetooth Classic, Wi-Fi, and ultra-wideband. For example, the low-power wireless-communication interface may have a range of between 0 and 300 meters or farther, depending on the implemented protocol. The communication interface implementation, e.g., Zigbee or Bluetooth Low Energy, may be selected based upon the distance of communication between the low-power wireless-communication interface and the recipient, and/or a remaining battery level of the low-power wireless-communication interface.
An agent with a medium-power wireless communication-interface may be referred to as a “secondary agent”. The medium-power wireless communication interface may have a second wireless range and be operable to implement one or more protocols including Zigbee, Bluetooth Low Energy interface, LoRa. For example, the medium-power wireless-communication interface may have a range of between 0 and 20 kilometers. The communication interface implementation, e.g., Zigbee, Bluetooth Low Energy, or LoRa, may be selected based upon the distance of communication between the medium-power wireless-communication interface and the recipient, and/or a remaining battery level of the medium-power wireless-communication interface.
An agent with a high-power wireless communication-interface may be referred to as a “tertiary agent”. The high-power wireless communication interface may have a third wireless range and be operable to implement one or more protocols including Zigbee, Bluetooth Low Energy, LoRa, Global System for Mobile Communication, General Packet Radio Service, cellular, near-field communication, and radio-frequency identification. For example, the high-power wireless-communication interface may have a global range, where the high-power wireless-communication interface may communicate with any electronic device implementing a similar communication protocol. The communication interface protocol selected may depend on the distance of communication between the high-power wireless-communication interface and a recipient, and/or a remaining battery level of the high-power wireless-communication interface.
6 FIGS.A-C 11 In some examples, a secondary agent may also include a low-power wireless-communication interface and a tertiary agent may also include low and medium-power wireless-communication interfaces, as discussed below with reference toand/orA-C. Further continuing the example, a “master agent”, a “secondary agent”, or a “tertiary agent” may refer to a “master tape node”, a “secondary tape node”, or a “tertiary tape node”.
With regard to the second form of hierarchy, the “agent”, “node”, “tape agent”, and “tape node”, may be qualified as a parent, child, or master, depending on whether a specific “agent” or “node” controls another “agent” or “node”. For example, a master-parent agent controls the master-child agent and a secondary or tertiary-parent agent controls a master-child agent. The default, without the qualifier of “parent” or “child” is that the master agent controls the secondary or tertiary agent Further, the “master tape node” may control a “secondary tape node” and a “tertiary tape node”, regardless of whether the master tape node is a parent node.
Further, each of the “agents”, “nodes”, “tape nodes”, and “tape agents” may be referred to as “intelligent nodes”, “intelligent tape nodes”, “intelligent tape agents”, and/or “intelligent tape agents” or any variant thereof, depending on the context and, for ease, may be used interchangeably.
Further, each of the “agents”, “nodes”, “tape nodes”, and “tape agents” may include flexible or non-flexible form factors unless otherwise specified. Thus, each of the “agents”, “nodes”, “tape nodes”, and “tape agents” include flexible and non-flexible (rigid) form factors, or a combination thereof including flexible components and non-flexible components.
An adhesive tape platform includes a plurality of segments that may be separated from the adhesive product (e.g., by cutting, tearing, peeling, or the like) and adhesively attached to a variety of different surfaces to inconspicuously implement any of a wide variety of different wireless communications-based network communications and transducing (e.g., sensing, actuating, etc.) applications. In certain embodiments, each segment of an adhesive tape platform has an energy source, wireless communication functionality, transducing functionality (e.g., sensor and energy harvesting functionality), and processing functionality that enable the segment to perform one or more transducing functions and report the results to a remote server or other computer system directly or through a network (e.g., formed by tape nodes and/or other network components). The components of the adhesive tape platform are encapsulated within a flexible adhesive structure that protects the components from damage while maintaining the flexibility needed to function as an adhesive tape (e.g., duct tape or a label) for use in various applications and workflows. In addition to single function applications, example embodiments also include multiple transducers (e.g., sensing and/or actuating transducers) that extend the utility of the platform by, for example, providing supplemental information and functionality relating characteristics of the state and/or environment of, for example, an article, object, vehicle, or person, over time.
Systems and processes for fabricating flexible multifunction adhesive tape platforms in efficient and low-cost ways also are described in US Patent Application Publication No. US-2018-0165568-A1. For example, in addition to using roll-to-roll and/or sheet-to-sheet manufacturing techniques, the fabrication systems and processes are configured to optimize the placement and integration of components within the flexible adhesive structure to achieve high flexibility and ruggedness. These fabrication systems and processes are able to create useful and reliable adhesive tape platforms that may provide local sensing, wireless transmitting, and positioning functionalities. Such functionality together with the low cost of production is expected to encourage the ubiquitous deployment of adhesive tape platform segments and thereby alleviate at least some of the problems arising from gaps in conventional infrastructure coverage that prevent continuous monitoring, event detection, security, tracking, and other logistics applications across heterogeneous environments.
As used herein, the term “or” refers an inclusive “or” rather than an exclusive “or.” In addition, the articles “a” and “an” as used in the specification and claims mean “one or more” unless specified otherwise or clear from the context to refer the singular form.
The terms “module,” “manager,” “component”, and “unit” refer to hardware, software, or firmware, or a combination thereof. The term “processor” or “computer” or the like includes one or more of: a microprocessor with one or more central processing unit (CPU) cores, a graphics processing unit (GPU), a digital signal processor (DSP), a field-programmable gate array (FPGA), a system-on-chip (SoC), a microcontroller unit (MCU), and an application-specific integrated circuit (ASIC), a memory controller, bus controller, and other components that manage data flow between said processor associated memory, and other components communicably coupled to the system bus. Thus the terms “module,” “manager,” “component”, and “unit” may include computer readable instructions that, when executed by a processor, implement the functionality discussed herein with respect to said “module,” “manager,” “component”, and “unit”.
Adhesive Tape Agent Platform
1 FIG. 112 114 110 113 112 116 110 112 118 120 112 116 112 116 110 120 113 122 113 110 is a schematic illustrating one example adhesive tape-agent platform, including wireless transducing circuit, used to seal a packagefor shipment. In this example, a segmentof the adhesive tape-agent platformis dispensed from a rolland affixed to the package. The adhesive tape-agent platformincludes an adhesive sideand a non-adhesive surface. The adhesive tape-agent platformmay be dispensed from the rollin the same way as any conventional packing tape, shipping tape, or duct tape. For example, the adhesive tape-agent platformmay be dispensed from the rollby hand, laid across the seam where the two top flaps of the packagemeet, and cut to a suitable length either by hand or using a cutting instrument (e.g., scissors or an automated or manual tape dispenser). Examples of such tape agents include tape agents having non-adhesive surfacethat carry one or more coatings or layers (e.g., colored, light reflective, light absorbing, and/or light emitting coatings or layers). Further, the segmentmay include an identifier(e.g., a QR code, RFID chip, etc.) that may be used to associate the segmentwith the package, as discussed below.
2 FIG. 1 FIG. 2 FIG. 120 113 112 113 112 122 224 226 112 224 226 120 112 122 120 112 112 120 112 is a schematic illustrating a non-adhesive surfaceof the segmentof the adhesive tape agent platformofincluding writing or other markings that convey instructions, warnings, or other information to a person or machine (e.g., a bar code reader), or may simply be decorative and/or entertaining. For example, different types of adhesive tape-agent platforms may be marked with distinctive colorations to distinguish one type of adhesive tape agent platform from another. In the illustrated example of, the segmentof the adhesive tape agent platformincludes an identifier(e.g., a two-dimensional bar code, such as a QR Code), written instructions(e.g., “Cut Here”), and an associated cut linethat indicates where the user should cut the adhesive tape agent platform. The written instructionsand the cut linetypically are printed or otherwise marked on the top non-adhesive surfaceof the adhesive tape agent platformduring manufacture. The identifier(e.g., a two-dimensional bar code), on the other hand, may be marked on the non-adhesive surfaceof the adhesive tape agent platformduring the manufacture of the adhesive tape agent platformor, alternatively, may be marked on the non-adhesive surfaceof the adhesive tape agent platformas needed using, for example, a printer or other marking device.
112 226 114 114 226 112 110 112 112 112 113 112 113 112 116 113 110 1 FIG. To avoid damaging the functionality of the segments of the adhesive tape agent platform, the cut linesmay demarcate the boundaries between adjacent segments at locations that are free of any active components of the wireless transducing circuit. The spacing between the wireless transducing circuitand the cut linesmay vary depending on the intended communication, transducing and/or adhesive taping application. In the example illustrated in, the length of the adhesive tape-agent platformthat is dispensed to seal the packagecorresponds to a single segment of the adhesive tape-agent platform. In other examples, the length of the adhesive tape-agent platformneeded to seal a package or otherwise serve the adhesive function for which the adhesive tape-agent platformis being applied may include multiple segmentsof the adhesive tape-agent platform, one or more of which segmentsmay be activated upon cutting the length of the adhesive tape-agent platformfrom the rolland/or applying the segmentof the adhesive tape agent platform to the package.
114 113 112 112 226 112 114 112 112 226 In some examples, the wireless transducing circuitsembedded in one or more segmentsof the adhesive tape-agent platformare activated when the adhesive tape agent platformis cut along the cut line. In these examples, the adhesive tape-agent platformincludes one or more embedded energy sources (e.g., thin film batteries, which may be printed, or conventional cell batteries, such as conventional watch style batteries, rechargeable batteries, or other energy storage device, such as a super capacitor or charge pump) that supply power to the wireless transducing circuitin one or more segments of the adhesive tape-agent platformin response to being separated from the adhesive tape-agent platform(e.g., along the cut line).
113 112 112 112 113 113 114 113 112 114 113 114 113 In some examples, each segmentof the adhesive tape agent platformincludes its own respective energy source. In some embodiments, the energy source is a battery of a type described above, an energy harvesting component or system that harvests energy from the environment, or both. In some of these examples, each energy source is configured to only supply power to the components in its respective adhesive tape platform segment regardless of the number of contiguous segments that are in a given length of the adhesive tape-agent platform. In other examples, when a given length of the adhesive tape agent platformincludes multiple segments, the energy sources in the respective segmentsare configured to supply power to the wireless transducing circuitin all of the segmentsin the given length of the adhesive tape agent platform. In some of these examples, the energy sources are connected in parallel and concurrently activated to power the wireless transducing circuitin all of the segmentsat the same time. In other examples, the energy sources are connected in parallel and alternately activated to power the wireless transducing circuitin respective ones of the segmentsat different time periods, which may or may not overlap.
3 FIG. 1 FIG. 330 332 334 336 332 336 330 112 332 336 340 332 330 336 344 332 330 336 332 336 340 332 340 332 344 44 346 348 shows an example adhesive tape platformthat includes a set of adhesive tape platform segmentseach of which includes a respective set of embedded wireless transducing circuit components, and a backing sheetwith a release coating that prevents the adhesive segmentsfrom adhering strongly to the backing sheet. Adhesive tape platformmay represent adhesive tape platformof. Each adhesive tape platform segmentincludes an adhesive side facing the backing sheet, and an opposing non-adhesive side. In this example, a particular segmentof the adhesive tape platformhas been removed from the backing sheetand affixed to an envelope. Each segmentof the adhesive tape platformcan be removed from the backing sheetin the same way that adhesive labels can be removed from a conventional sheet of adhesive labels (e.g., by manually peeling a segmentfrom the backing sheet). In general, the non-adhesive sideof the segmentmay include any type of writing, markings, decorative designs, or other ornamentation. In the illustrated example, the non-adhesive sideof the segmentincludes writing or other markings that correspond to a destination address for the envelope. The envelopealso includes a return addressand, optionally, a postage stamp or mark.
330 330 330 330 330 In some examples, segments of the adhesive tape platformare deployed by a human operator. The human operator may be equipped with a mobile phone or other device that allows the operator to authenticate and initialize the adhesive tape platform. In addition, the operator can take a picture of a parcel including the adhesive tape platform and any barcodes associated with the parcel and, thereby, create a persistent record that links the adhesive tape platformto the parcel. In addition, the human operator typically will send the picture to a network service and/or transmit the picture to the adhesive tape platformfor storage in a memory component of the adhesive tape platform.
334 332 330 332 336 332 332 336 332 330 334 332 332 336 332 336 In some examples, the wireless transducing circuit componentsthat are embedded in a segmentof the adhesive tape platformare activated when the segmentis removed from the backing sheet. In some of these examples, each segmentincludes an embedded capacitive sensing system that can sense a change in capacitance when the segmentis removed from the backing sheet. As explained in detail below, a segmentof the adhesive tape platformincludes one or more embedded energy sources (e.g., thin film batteries, common disk-shaped cell batteries, or rechargeable batteries or other energy storage devices, such as a super capacitor or charge pump) that can be configured to supply power to the wireless transducing circuit componentsin the segmentin response to the detection of a change in capacitance between the segmentand the backing sheetas a result of removing the segmentfrom the backing sheet.
4 FIG. 410 412 414 412 414 413 416 415 418 413 416 410 420 421 422 424 410 shows a block diagram of the components of an example wireless transducing circuit(e.g., an agent) that includes one or more wireless communication modules,. Each wireless communication module,includes a wireless communication circuit,, and an antenna,, respectively. Each wireless communication circuit,may represent a receiver or transceiver integrated circuit that implements one or more of GSM/GPRS, Wi-Fi, LoRa, Bluetooth, Bluetooth Low Energy, Z-wave, and ZigBee. The wireless transducing circuitalso includes a processor(e.g., a microcontroller or microprocessor), a solid-state atomic clock, at least one energy store(e.g., non-rechargeable or rechargeable printed flexible battery, conventional single or multiple cell battery, and/or a super capacitor or charge pump), one or more sensing transducers(e.g., sensors and/or actuators, and, optionally, one or more energy harvesting transducers). In some examples, the conventional single or multiple cell battery may be a watch style disk or button cell battery that is in an associated electrical connection apparatus (e.g., a metal clip) that electrically connects the electrodes of the battery to contact pads on the wireless transducing circuit.
424 Sensing transducersmay represent one or more of a capacitive sensor, an altimeter, a gyroscope, an accelerometer, a temperature sensor, a strain sensor, a pressure sensor, a piezoelectric sensor, a weight sensor, an optical or light sensor (e.g., a photodiode or a camera), an acoustic or sound sensor (e.g., a microphone), a smoke detector, a radioactivity sensor, a chemical sensor (e.g., an explosives detector), a biosensor (e.g., a blood glucose biosensor, odor detectors, antibody based pathogen, food, and water contaminant and toxin detectors, DNA detectors, microbial detectors, pregnancy detectors, and ozone detectors), a magnetic sensor, an electromagnetic field sensor, a humidity sensor, a light emitting units (e.g., light emitting diodes and displays), electro-acoustic transducers (e.g., audio speakers), electric motors, and thermal radiators (e.g., an electrical resistor or a thermoelectric cooler).
410 426 428 410 426 430 420 420 426 420 424 426 410 430 410 410 4 FIG. Wireless transducing circuitincludes a memoryfor storing data, such as profile data, state data, event data, sensor data, localization data, security data, and/or at least one unique identifier (ID)associated with the wireless transducing circuit, such as one or more of a product ID, a type ID, and a media access control (MAC) ID. Memorymay also store control codethat includes machine-readable instructions that, when executed by the processor, cause processorto perform one or more autonomous agent tasks. In certain embodiments, the memoryis incorporated into one or more of the processoror sensing transducers. In other embodiments, memoryis integrated in the wireless transducing circuitas shown in. The control codemay implement programmatic functions or program modules that control operation of the wireless transducing circuit, including implementation of an agent communication manager that manages the manner and timing of tape agent communications, a node-power manager that manages power consumption, and a tape agent connection manager that controls whether connections with other nodes are secure connections (e.g., connections secured by public key cryptography) or unsecure connections, and an agent storage manager that securely manages the local data storage on the wireless transducing circuit. In certain embodiments, a node connection manager ensures the level of security required by the end application and supports various encryption mechanisms. In some examples, a tape agent power manager and communication manager work together to optimize the battery consumption for data communication. In some examples, execution of the control code by the different types of nodes described herein may result in the performance of similar or different functions.
5 FIG. 4 FIG. 500 502 504 502 504 500 506 508 410 502 504 506 508 502 504 506 508 500 is a top view of a portion of an example flexible adhesive tape platformthat shows a first segmentand a portion of a second segment. Each segment,of the flexible adhesive tape platformincludes a respective set,of the components of the wireless transducing circuitof. The segments,and their respective sets of components,typically are identical and configured in the same way. In some other embodiments, however, the segments,and/or their respective sets of components,are different and/or configured in different ways. For example, in some examples, different sets of the segments of the flexible adhesive tape platformhave different sets or configurations of tracking and/or transducing components that are designed and/or optimized for different applications, or different sets of segments of the flexible adhesive tape platform may have different ornamentations (e.g., markings on the exterior surface of the platform) and/or different (e.g., alternating) lengths.
500 6 6 FIGS.A-C An example method of fabricating the adhesive tape platformaccording to a roll-to-roll fabrication process is described in connection withand as shown in FIGS. 7A and 7B of U.S. patent application Ser. No. 15/842,861, filed Dec. 14, 2017, the entirety of which is incorporated herein by reference.
The instant specification describes an example system of adhesive tape platforms (also referred to herein as “tape nodes”) that can be used to implement a low-cost wireless network infrastructure for performing monitoring, tracking, and other asset management functions relating to, for example, parcels, persons, tools, equipment and other physical assets and objects. The example system includes a set of three different types of tape nodes that have different respective functionalities and different respective cover markings that visually distinguish the different tape node types from one another. In one non-limiting example, the covers of the different tape node types are marked with different colors (e.g., white, green, and black). In the illustrated examples, the different tape node types are distinguishable from one another by their respective wireless communications capabilities and their respective sensing capabilities.
6 FIG.A 5 FIG. 640 500 410 640 642 644 646 644 646 646 646 646 640 646 640 is a schematic illustrating a cross-sectional side view of a portion of an example segmentof a flexible adhesive tape agent platform (e.g., platformof) that includes a respective set of the components of the wireless transducing circuitcorresponding to the first tape-agent type (e.g., white). The segmentincludes an adhesive layer, an optional flexible substrate, and an optional adhesive layeron the bottom surface of the flexible substrate. When the bottom adhesive layeris present, a release liner (not shown) may be (weakly) adhered to the bottom surface of the adhesive layer. In certain embodiments where adhesive layeris included, the adhesive layeris an adhesive (e.g., an acrylic foam adhesive) with a high-bond strength that is sufficient to prevent removal of the segmentfrom a surface on which the adhesive layeris adhered to without destroying the physical or mechanical integrity of the segmentand/or one or more of its constituent components.
644 644 642 646 644 642 646 644 642 644 648 650 652 654 656 658 660 662 640 652 415 418 413 416 640 690 692 694 4 FIG. In certain embodiments including the optional flexible substrate, the optional flexible substrateis a prefabricated adhesive tape that includes the adhesive layersandand the optional release liner. In other embodiments including the optional flexible substrate, the adhesive layers,are applied to the top and bottom surfaces of the flexible substrateduring the fabrication of the adhesive tape platform. The adhesive layermay bond the flexible substrateto a bottom surface of a flexible circuit, that includes one or more wiring layers (not shown) that connect the processor, a low-power wireless-communication interface(e.g., a Zigbee, Bluetooth® Low Energy (BLE) interface, or other low power communication interface), a clock and/or a timer circuit, transducing and/or transducer(s)(if present), the memory, and other components in a device layerto each other and to the energy storage deviceand, thereby, enable the transducing, tracking and other functionalities of the segment. The low-power wireless-communication interfacetypically includes one or more of the antennas,and one or more of the wireless communication circuits,of. The segmentmay further include a flexible cover, an interfacial region, and a flexible polymer layer.
6 FIG.B 5 FIG. 6 FIG.A 6 6 FIGS.A, andC 670 500 410 670 640 672 652 672 652 670 640 670 shows a cross-sectional side-view of a portion of an example segmentof a flexible adhesive tape agent platform (e.g., platformof) that includes a respective set of the components of the wireless transducing circuitcorresponding to a second tape-agent type (e.g., green). The segmentis similar to the segmentshown inbut further includes a medium-power communication-interface′ (e.g., a LoRa interface) in addition to the low-power communications-interface. The medium-power communication-interface′ has a longer communication range than the low-power communication-interface′. In certain embodiments, one or more other components of the segmentdiffer from the segmentin functionality or capacity (e.g., larger energy source). The segmentmay include further components, as discussed above and below with reference to.
6 FIG.C 6 FIG.B 680 410 680 670 682 652 672 682 680 670 shows a cross-sectional side view of a portion of an example segmentof the flexible adhesive tape-agent platform that includes a respective set of the components of the wireless transducing circuitcorresponding to the third tape-node type (e.g., black). The segmentis similar to the segmentof, but further includes a high-power communications-interface″ (e.g., a cellular interface; e.g., GSM/GPRS) in addition to a low-power communications-interface″, and may include a medium-power communications-interface″. The high-power communications-interface″ has a range that provides global coverage to available infrastructure (e.g. the cellular network). In certain embodiments, one or more other components of the segmentdiffer from the segmentin functionality or capacity (e.g., larger energy source).
6 6 FIGS.A-C 690 690 690 640 670 680 692 692 692 656 656 656 692 692 692 692 692 692 656 656 656 692 692 692 690 690 690 656 656 656 692 692 692 show embodiments in which the flexible covers,′,″ of the respective segments,, andinclude one or more interfacial regions,′,″ positioned over one or more of the transducers,′,″. In certain embodiments, one or more of the interfacial regions,′,″ have features, properties, compositions, dimensions, and/or characteristics that are designed to improve the operating performance of the platform for specific applications. In certain embodiments, the flexible adhesive tape platform includes multiple interfacial regions,′,″ over respective transducers,′,″, which may be the same or different depending on the target applications. Interfacial regions may represent one or more of an opening, an optically transparent window, and/or a membrane located in the interfacial regions,′,″ of the flexible covers,′,″ that is positioned over the one or more transducers and/or transducers,′,″. Additional details regarding the structure and operation of example interfacial regions,′,″ are described in U.S. Provisional Patent Application No. 62/680,716, filed Jun. 5, 2018, and U.S. Provisional Patent Application No. 62/670,712, filed May 11, 2018.
694 694 694 660 660 660 660 660 660 694 694 694 660 660 660 660 660 660 640 670 680 640 670 680 690 690 690 694 694 694 In certain embodiments, a planarizing polymer,′,″ encapsulates the respective device layers,′,″ and thereby reduces the risk of damage that may result from the intrusion of contaminants and/or liquids (e.g., water) into the device layer,′,″. The flexible polymer layers,′,″ may also planarize the device layers,′,″. This facilitates optional stacking of additional layers on the device layers,′,″ and also distributes forces generated in, on, or across the segments,,so as to reduce potentially damaging asymmetric stresses that might be caused by the application of bending, torquing, pressing, or other forces that may be applied to the segments,,during use. In the illustrated example, a flexible cover,′,″ is bonded to the planarizing polymer,′,″ by an adhesive layer (not shown).
690 690 690 644 644 644 690 690 690 644 644 644 690 690 690 642 642 642 646 646 646 644 644 644 690 690 690 644 644 644 690 690 690 644 644 644 644 644 644 The flexible cover,′,″ and the flexible substrate,′,″ may have the same or different compositions depending on the intended application. In some examples, one or both of the flexible cover,′,″ and the flexible substrate,′,″ include flexible film layers and/or paper substrates, where the film layers may have reflective surfaces or reflective surface coatings. Compositions for the flexible film layers may represent one or more of polymer films, such as polyester, polyimide, polyethylene terephthalate (PET), and other plastics. The optional adhesive layer on the bottom surface of the flexible cover,′,″ and the adhesive layers,′,″,,′,″ on the top and bottom surfaces of the flexible substrate,′,″ typically include a pressure-sensitive adhesive (e.g., a silicon-based adhesive). In some examples, the adhesive layers are applied to the flexible cover,′,″ and the flexible substrate,′,″ during manufacture of the adhesive tape-agent platform (e.g., during a roll-to-roll or sheet-to-sheet fabrication process). In other examples, the flexible cover,′,″ may be implemented by a prefabricated single-sided pressure-sensitive adhesive tape and the flexible substrate,′,″ may be implemented by a prefabricated double-sided pressure-sensitive adhesive tape; both kinds of tape may be readily incorporated into a roll-to-roll or sheet-to-sheet fabrication process. In some examples, the flexible substrate,′,″ is composed of a flexible epoxy (e.g., silicone).
662 662 662 652 652 652 650 650 650 In certain embodiments, the energy storage device,′,″ is a flexible battery that includes a printed electrochemical cell, which includes a planar arrangement of an anode and a cathode and battery contact pads. In some examples, the flexible battery may include lithium-ion cells or nickel-cadmium electro-chemical cells. The flexible battery typically is formed by a process that includes printing or laminating the electro-chemical cells on a flexible substrate (e.g., a polymer film layer). In some examples, other components may be integrated on the same substrate as the flexible battery. For example, the low-power wireless-communication interface,′,″ and/or the processor(s),′,″ may be integrated on the flexible battery substrate. In some examples, one or more of such components also (e.g., the flexible antennas and the flexible interconnect circuits) may be printed on the flexible battery substrate.
648 648 648 648 648 648 In examples of manufacture, the flexible circuit,′,″ is formed on a flexible substrate by one or more of printing, etching, or laminating circuit patterns on the flexible substrate. In certain embodiments, the flexible circuit,′,″ is implemented by one or more of a single-sided flex circuit, a double access or back-bared flex circuit, a sculpted flex circuit, a double-sided flex circuit, a multi-layer flex circuit, a rigid flex circuit, and a polymer-thick film flex circuit. A single-sided flexible circuit has a single conductor layer made of, for example, a metal or conductive (e.g., metal filled) polymer on a flexible dielectric film. A double access or back bared flexible circuit has a single conductor layer but is processed so as to allow access to selected features of the conductor pattern from both sides. A sculpted flex circuit is formed using a multi-step etching process that produces a flex circuit that has finished copper conductors that vary in thickness along their respective lengths. A multilayer flex circuit has three of more layers of conductors, where the layers typically are interconnected using plated through holes. Rigid flex circuits are a hybrid construction of flex circuit consisting of rigid and flexible substrates that are laminated together into a single structure, where the layers typically are electrically interconnected via plated through holes. In polymer thick film (PTF) flex circuits, the circuit conductors are printed onto a polymer base film, where there may be a single conductor layer or multiple conductor layers that are insulated from one another by respective printed insulating layers.
640 670 680 648 648 648 648 648 648 648 648 648 652 652 652 654 654 654 650 650 650 656 656 656 658 658 658 648 648 648 652 652 652 672 672 682 650 650 650 650 650 650 658 658 658 650 650 650 652 652 652 672 672 682 648 648 648 662 662 662 648 648 648 6 6 FIGS.A-C In the example segments,,shown in, the flexible circuit,′,″ represents a single-access flex-circuit that interconnects the components of the adhesive tape platform on a single side of the flexible circuit,′,″. However, in other embodiments, the flexible circuit,′,″ represents a double access flex circuit that includes a front-side conductive pattern that interconnects the low-power communications interface,′,″, the timer circuit,′,″, the processor,′,″, the one or more sensor transducers,′,″ (if present), and the memory,′,″, and allows through-hole access (not shown) to a back-side conductive pattern that is connected to the flexible battery (not shown). In these embodiments, the front-side conductive pattern of the flexible circuit,′,″ connects the communications circuits,′,″,′,″,″ (e.g., receivers, transmitters, and transceivers) to their respective antennas and to the processor,′,″ and also connects the processor,′,″ to the one or more sensors and the memory,′, and″. The backside conductive pattern connects the active electronics (e.g., the processor,′,″, the communications circuits,′,″,′,″,″ and the transducers) on the front-side of the flexible circuit,′,″ to the electrodes of the energy storage device,′,″ via one or more through holes in the substrate of the flexible circuit,′,″.
640 670 680 640 670 680 6 6 FIGS.A-C The various units of the segments,,shown inmay be arranged to accommodate different objects or structures (e.g., trash bins, fire extinguishers, etc.) and sensors may be added to, or subtracted from, the segments,, and, according to a particular task.
7 FIG.A 770 772 774 775 776 778 775 777 770 774 774 780 1 2 777 774 780 782 775 776 778 770 1 2 1 2 Referring to, in some examples, each of one or more of the segments,of a tracking adhesive productincludes a respective circuitthat delivers power from the respective energy sourceto the respective tracking circuit(e.g., a processor and one or more wireless communications circuits) in response to an event. In some of these examples, the wake circuitis configured to transition from an off-state to an on-state when the voltage on the wake nodeexceeds a threshold level, at which point the wake circuit transitions to an on-state to power-on the segment. In the illustrated example, this occurs when the user separates the segment from the tracking adhesive product, for example, by cutting across the tracking adhesive productat a designated location (e.g., along a designated cut-line). In particular, in its initial, un-cut state, a minimal amount of current flows through the resistors Rand R. As a result, the voltage on the wake noderemains below the threshold turn-on level. After the user cuts across the tracking adhesive productalong the designated cut-line, the user creates an open circuit in the loop, which pulls the voltage of the wake node above the threshold level and turns on the wake circuit. As a result, the voltage across the energy sourcewill appear across the tracking circuitand, thereby, turn on the segment. In particular embodiments, the resistance value of resistor Ris greater than the resistance value of R. In some examples, the resistance values of resistors Rand Rare selected based on the overall design of the adhesive product system (e.g., the target wake voltage level and a target leakage current).
778 In some examples, each of one or more of the segments of a tracking adhesive product includes a respective sensor and a respective wake circuit that delivers power from the respective energy source to the respective one or more components of the respective tracking circuitin response to an output of the sensor. In some examples, the respective sensor is a strain sensor that produces a wake signal based on a change in strain in the respective segment. In some of these examples, the strain sensor is affixed to a tracking adhesive product and configured to detect the stretching of the tracking adhesive product segment as the segment is being peeled off a roll or a sheet of the tracking adhesive product. In some examples, the respective sensor is a capacitive sensor that produces a wake signal based on a change in capacitance in the respective segment. In some of these examples, the capacitive sensor is affixed to a tracking adhesive product and configured to detect the separation of the tracking adhesive product segment from a roll or a sheet of the tracking adhesive product. In some examples, the respective sensor is a flex sensor that produces a wake signal based on a change in curvature in the respective segment. In some of these examples, the flex sensor is affixed to a tracking adhesive product and configured to detect bending of the tracking adhesive product segment as the segment is being peeled off a roll or a sheet of the tracking adhesive product. In some examples, the respective sensor is a near field communications sensor that produces a wake signal based on a change in inductance in the respective segment.
7 FIG.B 7 FIG.A 794 776 778 794 775 796 777 794 1 2 794 780 782 796 778 shows another example of a tracking adhesive productthat delivers power from the respective energy sourceto the respective tracking circuit(e.g., a processor and one or more wireless communications circuits) in response to an event. This example is similar in structure and operation as the tracking adhesive productshown in, except that the wake circuitis replaced by a switchthat is configured to transition from an open state to a closed state when the voltage on the switch nodeexceeds a threshold level. In the initial state of the tracking adhesive product, the voltage on the switch node is below the threshold level as a result of the low current level flowing through the resistors Rand R. After the user cuts across the tracking adhesive productalong the designated cut-line, the user creates an open circuit in the loop, which pulls up the voltage on the switch node above the threshold level to close the switchand turn on the tracking circuit.
A wireless sensing system includes a plurality of wireless nodes configured to detect tampering in assets. Tampering may include, but is not limited to, opening assets such as boxes, containers, storage, or doors, moving the asset without authorization, moving the asset to an unintended location, moving the asset in an unintended way, damaging the asset, shaking the asset in an unintended way, orienting an asset in a way that it is not meant to be oriented. In many cases, these actions may compromise the integrity or safety of assets. Wireless nodes associated with the asset are configured to detect a tampering event. In an embodiment, a tampering event is associated with an action, a time, and a location. In an embodiment, the wireless nodes communicate the tampering event to the wireless sensing system. The wireless sensing system is configured to provide a notification or alert to a user of the wireless sensing system. In some embodiments, a wireless node may directly transmit the notification or alert to the user. In other embodiments, a wireless node may include a display that indicates whether or not a tampering event has occurred (e.g., the display may be an indicator light or LED).
Alerts may be transmitted to server/cloud, other wireless nodes, a client device, or some combination thereof. For example, in an embodiment, a wireless node of the wireless sensing system captures sensor data, detects a tampering event, and transmits an alarm to a user of the wireless sensing system (e.g., without communicating with a server or cloud of the wireless sensing system). In another embodiment, a wireless node of the wireless sensing system captures sensor data and transmits the sensor data to a gateway, parent node (e.g., black tape), or client device. The gateway, parent node, or client device detects a tampering event based on the received sensor data and transmits an alarm to a user of the wireless sensing system. In another embodiment, the wireless node of the wireless sensing system captures sensor data, detects a tampering event, and transmits information describing the tampering event to a server or cloud of the wireless sensing system. The server or cloud of the wireless sensing system transmits an alarm to a user of the wireless sensing system.
7 FIG.C 700 702 704 706 708 710 700 712 714 714 708 710 700 714 712 716 716 702 700 708 710 716 702 716 708 710 706 708 710 706 706 708 710 shows a diagrammatic cross-sectional front view of an example adhesive tape platformand a perspective view of an example asset. Instead of activating the adhesive tape platform in response to separating a segment of the adhesive tape platform from a roll or a sheet of the adhesive tape platform, this example is configured to supply power from the energy sourceto turn on the wireless transducing circuitin response to establishing an electrical connection between two power terminals,that are integrated into the adhesive tape platform. In particular, each segment of the adhesive tape platformincludes a respective set of embedded tracking components, an adhesive layer, and an optional backing sheetwith a release coating that prevents the segments from adhering strongly to the backing sheet. In some examples, the power terminals,are composed of an electrically conductive material (e.g., a metal, such as copper) that may be printed or otherwise patterned and/or deposited on the backside of the adhesive tape platform. In operation, the adhesive tape platform can be activated by removing the backing sheetand applying the exposed adhesive layerto a surface that includes an electrically conductive region. In the illustrated embodiment, the electrically conductive regionis disposed on a portion of the asset. When the adhesive backside of the adhesive tape platformis adhered to the asset with the exposed terminals,aligned and in contact with the electrically conductive regionon the asset, an electrical connection is created through the electrically conductive regionbetween the exposed terminals,that completes the circuit and turns on the wireless transducing circuit. In particular embodiments, the power terminals,are electrically connected to any respective nodes of the wireless transducing circuitthat would result in the activation of the tracking circuitin response to the creation of an electrical connection between the power terminals,.
In some examples, after a tape node is turned on, it will communicate with the network service to confirm that the user/operator who is associated with the tape node is an authorized user who has authenticated himself or herself to the network service. In these examples, if the tape node cannot confirm that the user/operator is an authorized user, the tape node will turn itself off.
8 FIG. 1 7 FIGS.- 800 802 804 808 810 812 814 shows an example network communications environmentthat includes a networkthat supports communications between one or more serversexecuting one or more applications of a network service, mobile gateways(a smart device mobile gateway),(a vehicle mobile gateway), a stationary gateway, and various types of tape nodes that are associated with various assets (e.g., parcels, equipment, tools, persons, and other things). Hereinafter “tape nodes” may be used interchangeably with the “agents”, as described above, with reference to; the “agents” are in the form of a “tape node” attached to different objects, e.g., an asset, storage container, vehicle, equipment, etc.; the master agent may be referred to as a master tape node, a secondary agent may be referred to as a secondary tape node; and a tertiary agent may be referred to as a tertiary tape node.
802 802 870 In some examples, the network(e.g., a wireless network) includes one or more network communication systems and technologies, including any one or more of wide area networks, local area networks, public networks (e.g., the internet), private networks (e.g., intranets and extranets), wired networks, and wireless networks. For example, the networkincludes communications infrastructure equipment, such as a geolocation satellite system(e.g., GPS, GLONASS, and NAVSTAR), cellular communication systems (e.g., GSM/GPRS), Wi-Fi communication systems, RF communication systems (e.g., LoRa), Bluetooth communication systems (e.g., a Bluetooth Low Energy system), Z-wave communication systems, and ZigBee communication systems.
In some examples, the one or more network service applications leverage the above-mentioned communications technologies to create a hierarchical wireless network of tape nodes improves asset management operations by reducing costs and improving efficiency in a wide range of processes, from asset packaging, asset transporting, asset tracking, asset condition monitoring, asset inventorying, and asset security verification. Communication across the network is secured by a variety of different security mechanisms. In the case of existing infrastructure, a communication link uses the infrastructure security mechanisms. In the case of communications among tapes nodes, the communication is secured through a custom security mechanism. In certain cases, tape nodes may also be configured to support block chain to protect the transmitted and stored data.
A network of tape nodes may be configured by the network service to create hierarchical communications network. The hierarchy may be defined in terms of one or more factors, including functionality (e.g., wireless transmission range or power), role (e.g., master-tape node vs. peripheral-tape node), or cost (e.g., a tape node equipped with a cellular transceiver vs. a peripheral tape node equipped with a Bluetooth LE transceiver). As described above with reference to the agents, tape nodes may be assigned to different levels of a hierarchical network according to one or more of the above-mentioned factors. For example, the hierarchy may be defined in terms of communication range or power, where tape nodes with higher-power or longer-communication range transceivers are arranged at a higher level of the hierarchy than tape nodes with lower-power or lower-range power or lower range transceivers. In another example, the hierarchy is defined in terms of role, where, e.g., a master tape node is programmed to bridge communications between a designated group of peripheral tape nodes and a gateway node or server node. The problem of finding an optimal hierarchical structure may be formulated as an optimization problem with battery capacity of nodes, power consumption in various modes of operation, desired latency, external environment, etc. and may be solved using modern optimization methods e.g. neural networks, artificial intelligence, and other machine learning computing systems that take expected and historical data to create an optimal solution and may create algorithms for modifying the system's behavior adaptively in the field.
820 814 812 818 818 804 808 418 842 844 846 848 804 806 818 824 828 832 842 844 846 848 800 652 1 7 FIGS.- 6 FIG. The tape nodes may be deployed by automated equipment or manually. In this process, a tape node typically is separated from a roll or sheet and adhered to a parcel (e.g., asset) or other stationary (e.g., stationary gateway) or mobile object (e.g., a, such as a delivery truck, such as mobile gateway) or stationary object (e.g., a structural element of a building). This process activates the tape node (e.g., the tape node) and causes the tape nodeto communicate with the one or more serversof the network service. In this process, the tape nodemay communicate through one or more other tape nodes (e.g., the tape nodes,,,) in the communication hierarchy. In this process, the one or more serversexecutes the network service applicationto programmatically configure tape nodes,,,,,,,, that are deployed in the network communications environment. In some examples, there are multiple classes or types of tape nodes (e.g., a master agent, a secondary agent, or a tertiary agent), where each tape node class has a different respective set of functionalities and/or capacities, as described herein with respect to the “agents” in. For example, the master agents have a lower-power wireless communication interface (e.g., the low-power wireless-communication interface, with reference to), in comparison to the secondary and tertiary agents.
804 802 810 812 814 802 818 824 828 832 842 844 846 848 810 812 814 810 812 814 802 In some examples, the one or more serverscommunicate over the networkwith one or more gateways,,that are configured to send, transmit, forward, or relay messages to the networkin response to transmissions from the tape nodes,,,,,,,that are associated with respective assets and within communication range. Example gateways include mobile gateways,and a stationary gateway. In some examples, the mobile gateways,, and the stationary gatewayare able to communicate with the networkand with designated sets or groups of tape nodes.
812 816 808 818 821 820 808 802 818 640 816 670 680 812 802 818 816 818 6 FIG.A 6 6 FIGS.B andC In some examples, the mobile gatewayis a vehicle (e.g., a delivery truck or other mobile hub) that includes a wireless communications unitthat is configured by the network serviceto communicate with a designated network of tape nodes, including tape node(e.g., a master tape node) in the form of a label that is adhered to a parcel(e.g., an envelope) that contains an asset, and is further configured to communicate with the network serviceover the network. In some examples, the tape nodeincludes a lower-power wireless-communications interface of the type used in, e.g., segment(shown in), and the wireless communications unitmay be implemented by a secondary or tertiary tape node (e.g., one of segmentor segment, respectively shown in) that includes a lower-power communications interfaces for communicating with tape nodes within range of the mobile gatewayand a higher-power communications-interface for communicating with the network. In this way, the tape nodeand wireless communications unitcreate a hierarchical wireless network of tape nodes for transmitting, forwarding, bridging, relaying, or otherwise communicating wireless messages to, between, or on behalf of the tape nodein a power-efficient and cost-effective way.
810 822 824 826 804 802 826 828 830 832 834 824 828 832 810 828 832 640 824 670 680 828 832 826 810 824 828 832 826 810 810 824 804 802 828 832 824 828 832 824 6 FIG.A 6 6 FIGS.B andC In some examples, a mobile gatewayis a mobile phone that is operated by a human operator and executes a client applicationthat is configured by a network service to communicate with a designated set of tape nodes, including a secondary or tertiary tape nodethat is adhered to a parcel(e.g., a box), and is further configured to communicate with a serverover the network. In the illustrated example, the parcelcontains a first parcel labeled or sealed by a master tape nodeand containing a first asset, and a second parcel labeled or sealed by a master tape nodeand containing a second asset. The secondary or tertiary tape nodecommunicates with each of the master tape nodes,and also communicates with the mobile gateway. In some examples, each of the master tape nodes,includes a lower-power wireless-communications interface of the type used in, e.g., segment(shown in), and the secondary/tertiary tape nodeis implemented by a tape node (e.g., segmentor segment, shown in) that includes a low-power communications interface for communicating with the master tape nodes,contained within the parcel, and a higher-power communications interface for communicating with the mobile gateway. The secondary or tertiary tape nodeis operable to relay wireless communications between the master tape nodes,contained within the parceland the mobile gateway, and the mobile gatewayis operable to relay wireless communications between the secondary or tertiary tape nodeand the serverover the network. In this way, the master tape nodesandand the secondary or tertiary tape nodecreate a wireless network of nodes for transmitting, forwarding, relaying, or otherwise communicating wireless messages to, between, or on behalf of the master tape nodes,, the secondary or tertiary tape node, and the network service (not shown) in a power-efficient and cost-effective way.
822 810 822 810 822 822 804 822 804 822 In some embodiments, the client applicationis installed on a mobile device (e.g., smartphone) that may also operate as mobile gateway. The client applicationmay cause the mobile device to function as a mobile gateway. For example, the client applicationruns in the background to allow the mobile device to bridge communications between tape nodes that are communicating on one protocol to other tape nodes that are communicating on another protocol. For example, a tape node transmits data to the mobile device through Bluetooth, and the mobile device (running the client application) relays that data to the servervia cellular (2G, 3G, 4G, 5G) or Wi-Fi. Further, the client applicationmay cause the mobile device to establish a connection with, and receive pings (e.g., alerts to nearby assets that an environmental profile threshold has been exceeded), from the tape nodes or from the server. The tape nodes or server may request services (e.g., to display alert messages within a graphical user interface of the mobile device, relay messages to nearby tape nodes or mobile or stationary gateways, delegate tasks to the mobile device, such as determining the location of the tape node, etc.) from the mobile device. For example, the mobile device running the client applicationmay share location data with the tape node, allowing the tape node to pinpoint its location.
814 804 806 808 840 842 844 846 848 850 852 854 856 858 814 860 670 680 800 814 802 6 6 FIGS.B andC In some examples, the stationary gatewayis implemented by a serverexecuting a network service applicationthat is configured by the network serviceto communicate with a designated setof master tape nodes,,,that are adhered to respective parcels containing respective assets,,,on a pallet. In other examples, the stationary gatewayis implemented by a secondary or tertiary tape node(e.g., segmentsor, respectively shown in) that is adhered to, for example, a wall, column or other infrastructure component of the physical premise's environment, and includes a low-power communications interface for communicating with nodes within range of the stationary gatewayand a higher-power communications interface for communicating with the network.
842 848 808 814 842 848 808 814 802 842 848 858 842 848 808 842 848 859 858 842 848 842 848 859 408 814 802 In one embodiment, each of the master tape nodes-is a master tape node and is configured by the network serviceto communicate individually with the stationary gateway, which relays communications from the master tape nodes-to the network servicethrough the stationary gatewayand over the network. In another embodiment, one of the master tape nodes-at a time is configured to transmit, forward, relay, or otherwise communicate wireless messages to, between, or on behalf of the other master nodes on the pallet. In this embodiment, the master tape node may be determined by the master tape nodes-or designated by the network service. In some examples, the master tape nodes-with the longest range or highest remaining power level is determined to be the master tape node. In some examples, when the power level of the current master tape node drops below a certain level (e.g., a fixed power threshold level or a threshold level relative to the power levels of one or more of the other master tape nodes), another one of the master tape nodes assumes the role of the master tape node. In some examples, a master tape nodeis adhered to the palletand is configured to perform the role of a master node for the other master tape nodes-. In these ways, the master tape nodes-,are configurable to create different wireless networks of nodes for transmitting, forwarding, relaying, bridging, or otherwise communicating wireless messages with the network servicethrough the stationary gatewayand over the networkin a power-efficient and cost-effective way.
814 808 860 862 864 808 802 864 866 860 866 864 814 866 652 652 652 860 652 652 866 864 672 672 682 814 6 6 FIGS.A-C 6 6 FIGS.B-C 6 6 FIGS.B-C In the illustrated example, the stationary gatewayalso is configured by the network serviceto communicate with a designated network of tape nodes, including the secondary or tertiary tape nodethat is adhered to the inside of a doorof a shipping container, and is further configured to communicate with the network serviceover the network. In the illustrated example, the shipping containercontains a number of parcels labeled or sealed by respective master tape nodesand containing respective assets. The secondary or tertiary tape nodecommunicates with each of the master tape nodeswithin the shipping containerand communicates with the stationary gateway. In some examples, each of the master tape nodesincludes a low-power wireless communications-interface (e.g., the low-power wireless-communication interface,′,″, with reference to), and the secondary or tertiary tape nodeincludes a low-power wireless-communications interface (low-power wireless-communication interfaces′,″, with reference to) for communicating with the master tape nodescontained within the shipping container, and a higher-power wireless-communications interface (e.g., medium-power wireless-communication interface′, medium-power wireless-communication interface″, high-power wireless-communication interface″, with reference to) for communicating with the stationary gateway. In some examples, either a secondary or tertiary tape node, or both, may be used, depending on whether a high-power wireless-communication interface is necessary for sufficient communication.
864 860 866 864 864 In some examples, when the doors of the shipping containerare closed, the secondary or tertiary tape nodeis operable to communicate wirelessly with the master tape nodescontained within the shipping container. In some embodiments, both a secondary and a tertiary node are attached to the shipping container. Whether a secondary and a tertiary node are used may depend on the range requirements of the wireless-communications interface. For example, if out at sea a node will be required to transmit and receive signals from a server located outside the range of a medium-power wireless-communications interface, a tertiary node will be used because the tertiary node includes a high-power wireless-communications interface.
860 866 864 860 860 808 860 814 814 860 808 802 814 860 860 842 848 860 866 866 860 808 In an example, the secondary or tertiary tape nodeis configured to collect sensor data from master tape nodesand, in some embodiments, process the collected data to generate, for example, statistics from the collected data. When the doors of the shipping containerare open, the secondary or tertiary tape nodeis programmed to detect the door opening (e.g., using a photodetector or an accelerometer component of the secondary or tertiary tape node) and, in addition to reporting the door opening event to the network service, the secondary or tertiary tape nodeis further programmed to transmit the collected data and/or the processed data in one or more wireless messages to the stationary gateway. The stationary gateway, in turn, is operable to transmit the wireless messages received from the secondary or tertiary tape nodeto the network serviceover the network. Alternatively, in some examples, the stationary gatewayalso is operable to perform operations on the data received from the secondary or tertiary tape nodewith the same type of data produced by the secondary or tertiary tape nodebased on sensor data collected from the master tape nodes-. In this way, the secondary or tertiary tape nodeand master tape nodecreate a wireless network of nodes for transmitting, forwarding, relaying, or otherwise communicating wireless messages to, between, or on behalf of the master tape node, the secondary or tertiary tape nodes, and the network servicein a power-efficient and cost-effective way.
8 FIG. 6 6 FIGS.A-C 1 7 FIGS.- 640 670 680 818 828 832 842 848 866 670 826 864 824 860 680 800 In an example of the embodiment shown in, there are three types of backward compatible tape nodes: a short-range master tape node (e.g., segment), a medium-range secondary tape node (e.g., segment), and a long-range tertiary tape node (e.g. segment), as respectively shown in(here, “tape node” is used interchangeably with “agent”, as described with reference to). The short-range master tape nodes typically are adhered directly to parcels containing assets. In the illustrated example, the master tape nodes,,,-,are short-range tape nodes. The short-range tape nodes typically communicate with a low-power wireless-communication protocol (e.g., Bluetooth LE, Zigbee, or Z-wave). The segmentsare typically adhered to objects (e.g., a parceland a shipping container) that are associated with multiple parcels that are separated from the medium-range tape nodes by a barrier or a long distance. In the illustrated example, the secondary and/or tertiary tape nodesandare medium-range tape nodes. The medium-range tape nodes typically communicate with low and medium-power wireless-communication protocols (e.g., Bluetooth, LoRa, or Wi-Fi). The segmentstypically are adhered to mobile or stationary infrastructure of the network communications environment.
812 814 680 680 416 812 816 800 816 814 800 814 In the illustrated example, the mobile gatewayand the stationary gatewayare implemented by, e.g., segment. The segmentstypically communicate with other nodes using a high-power wireless-communication protocol (e.g., a cellular data communication protocol). In some examples, the wireless communications unit(a secondary or tertiary tape node) is adhered to a mobile gateway(e.g., a truck). In these examples, the wireless communications unitmay be moved to different locations in the network communications environmentto assist in connecting other tape nodes to the wireless communications unit. In some examples, the stationary gatewayis a tape node that may be attached to a stationary structure (e.g., a wall) in the network communications environmentwith a known geographic location (e.g., GPS coordinates). In these examples, other tape nodes in the environment may determine their geographic location by querying the stationary gateway.
808 804 816 812 814 800 804 In some examples, in order to conserve power, the tape nodes typically communicate according to a schedule promulgated by the network service. The schedule usually dictates all aspects of the communication, including the times when particular tape nodes should communicate, the mode of communication, and the contents of the communication. In one example, the server (not shown) transmits programmatic Global Scheduling Description Language (GSDL) code to the master tape node and each of the secondary and tertiary tape nodes in the designated set. In this example, execution of the GSDL code causes each of the tape nodes in the designated set to connect to the master tape node at a different respective time that is specified in the GSDL code, and to communicate a respective set of one or more data packets of one or more specified types of information over the respective connection. In some examples, the master tape node simply forwards the data packets to the server, either directly or indirectly through a gateway tape node (e.g., the long-range tape node, such as wireless communication unit, adhered to the mobile gateway, or a long-range tape node, such as stationary gateway, that is adhered to an infrastructure component of the network communications environment). In other examples, the master tape node processes the information contained in the received data packets and transmits the processed information to the server.
9 FIG. 8 FIG. 970 972 976 974 978 976 982 980 984 982 904 804 906 806 986 974 978 980 984 986 904 is a schematic illustrating one example hierarchical wireless communications network of tape nodes. In this example, the short-range tape nodeand the medium range tape nodecommunicate with one another over their respective low power wireless communication interfaces,. The medium range tape nodeand the long-range tape nodecommunicate with one another over their respective medium power wireless communication interfaces,. The long-range tape nodeand the one or more network service servers(e.g., server(s),) running application(s)(e.g., application(s)) communicate with one another over the high-power communication interface. In some examples, the low power communication interfaces,establish wireless communications with one another in accordance with the Bluetooth LE protocol, the medium power communication interfaces,establish wireless communications with one another in accordance with the LoRa communications protocol, and the high-power communication interfaceestablishes wireless communications with the one or more network service serversin accordance with a cellular communications protocol.
In some examples, the different types of tape nodes are deployed at different levels in the communications hierarchy according to their respective communications ranges, with the long-range tape nodes generally at the top of the hierarchy, the medium range tape nodes generally in the middle of the hierarchy, and the short-range tape nodes generally at the bottom of the hierarchy. In some examples, the different types of tape nodes are implemented with different feature sets that are associated with component costs and operational costs that vary according to their respective levels in the hierarchy. This allows system administrators flexibility to optimize the deployment of the tape nodes to achieve various objectives, including cost minimization, asset tracking, asset localization, and power conservation.
904 904 904 904 816 812 814 800 904 804 In some examples, one or more network service serversdesignates a tape node at a higher level in a hierarchical communications network as a master node of a designated set of tape nodes at a lower level in the hierarchical communications network. For example, the designated master tape node may be adhered to a parcel (e.g., a box, pallet, or shipping container) that contains one or more tape nodes that are adhered to one or more packages containing respective assets. In order to conserve power, the tape nodes typically communicate according to a schedule promulgated by the one or more network service servers. The schedule usually dictates all aspects of the communication, including the times when particular tape nodes should communicate, the mode of communication, and the contents of the communication. In one example, the one or more network service serverstransmits programmatic Global Scheduling Description Language (GSDL) code to the master tape node and each of the lower-level tape nodes in the designated set. In this example, execution of the GSDL code causes each of the tape nodes in the designated set to connect to the master tape node at a different respective time that is specified in the GSDL code, and to communicate a respective set of one or more data packets of one or more specified types of information over the respective connection. In some examples, the master tape node simply forwards the data packets to the one or more network service servers, either directly or indirectly through a gateway tape node (e.g., the long-range wireless communication unitadhered to the mobile gateway(which could be a vehicle, ship, plane, etc.) or the stationary gatewayis a long-range tape node adhered to an infrastructure component of the environment). In other examples, the master tape node processes the information contained in the received data packets and transmits the processed information to the one or more network service servers/.
10 FIG. 10 FIG. 10 FIG. 10 FIG. 1090 1092 904 1094 is a flowchart illustrating one example method of creating a hierarchical communications network. In accordance with this method, a first tape node is adhered to a first parcel in a set of associated parcels, the first tape node including a first type of wireless communication interface and a second type of wireless communication interface having a longer range than the first type of wireless communication interface (, block). A second tape node is adhered to a second parcel in the set, the second tape node including the first type of wireless communication interface, wherein the second tape node is operable to communicate with the first tape node over a wireless communication connection established between the first type of wireless communication interfaces of the first and second tape nodes (, block). An application executing on a computer system (e.g., the one or more network service serversof a network service) establishes a wireless communication connection with the second type of wireless communication interface of the first tape node, and the application transmits programmatic code executable by the first tape node to function as a master tape node with respect to the second tape node (, block).
As used herein, the term “node” refers to both a tape node and a non-tape node unless the node is explicitly designated as a “tape node” or a “non-tape node.” In some embodiments, a non-tape node may have the same or similar communication, sensing, processing and other functionalities and capabilities as the tape nodes described herein, except without being integrated into a tape platform. In some embodiments, non-tape nodes can interact seamlessly with tape nodes. Each node is assigned a respective unique identifier.
Embodiments of the present disclosure further describe a distributed software operating system that is implemented by distributed hardware nodes executing intelligent agent software to perform various tasks or algorithms. In some embodiments, the operating system distributes functionalities (e.g., performing analytics on data or statistics collected or generated by nodes) geographically across multiple intelligent agents that are bound to logistic items (e.g., parcels, containers, packages, boxes, pallets, a loading dock, a door, a light switch, a vehicle such as a delivery truck, a shipping facility, a port, a hub, etc.). In addition, the operating system dynamically allocates the hierarchical roles (e.g., master and slave roles) that nodes perform over time in order to improve system performance, such as optimizing battery life across nodes, improving responsiveness, and achieving overall objectives. In some embodiments, optimization is achieved using a simulation environment for optimizing key performance indicators (PKIs).
In some embodiments, the nodes are programmed to operate individually or collectively as autonomous intelligent agents. In some embodiments, nodes are configured to communicate and coordinate actions and respond to events. In some embodiments, a node is characterized by its identity, its mission, and the services that it can provide to other nodes. A node's identity is defined by its capabilities (e.g., battery life, sensing capabilities, and communications interfaces). A node may be defined by the respective program code, instructions, or directives it receives from another node (e.g., a server or a master node) and the actions or tasks that it performs in accordance with that program code, instructions, or directives (e.g., sense temperature every hour and send temperature data to a master node to upload to a server). A node's services may be defined by the functions or tasks that it is permitted to perform for other nodes (e.g., retrieve temperature data from a peripheral node and send the received temperature data to the server). At least for certain tasks, once programmed and configured with their identities, missions, and services, nodes can communicate with one another and request services from and provide services to one another independently of the server.
Thus, in accordance with the runtime operating system every agent knows its objectives (programmed). Every agent knows which capabilities/resources it needs to fulfill objective. Every agent communicates with every other node in proximity to see if it can offer the capability. Examples include communicate data to the server, authorize going to lower-power level, temperature reading, send an alert to local hub, send location data, triangulate location, any boxes in same group that already completed group objectives.
Nodes can be associated with logistic items. Examples of a logistic item includes, for example, a package, a box, pallet, a container, a truck or other conveyance, infrastructure such as a door, a conveyor belt, a light switch, a road, or any other thing that can be tracked, monitored, sensed, etc. or that can transmit data concerning its state or environment. In some examples, a server or a master node may associate the unique node identifiers with the logistic items.
Communication paths between tape and/or non-tape nodes may be represented by a graph of edges between the corresponding logistic items (e.g., a storage unit, truck, or hub). In some embodiments, each node in the graph has a unique identifier. A set of connected edges between nodes is represented by a sequence of the node identifiers that defines a communication path between a set of nodes.
11 FIG.A 1120 1122 1120 1122 1122 1120 1122 1122 1120 1124 1126 1130 1128 Referring to, a node(Node A) is associated with a package(Package A). In some embodiments, the nodemay be implemented as a tape node that is used to seal the packageor it may be implemented as a label node that is used to label the package; alternatively, the nodemay be implemented as a non-tape node that is inserted within the packageor embedded in or otherwise attached to the interior or exterior of the package. In the illustrated embodiment, the nodeincludes a low power communications interface(e.g., a Bluetooth Low Energy communications interface). Another node(Node B), which is associated with another package(Package B), is similarly equipped with a compatible low power communications interface(e.g., a Bluetooth Low Energy communications interface).
1126 1120 1120 1132 In an example scenario, in accordance with the programmatic code stored in its memory, node(Node B) requires a connection to node(Node A) to perform a task that involves checking the battery life of Node A. Initially, Node B is unconnected to any other nodes. In accordance with the programmatic code stored in its memory, Node B periodically broadcasts advertising packets into the surrounding area. When the other node(Node A) is within range of Node B and is operating in a listening mode, Node A will extract the address of Node B and potentially other information (e.g., security information) from an advertising packet. If, according to its programmatic code, Node A determines that it is authorized to connect to Node B, Node A will attempt to pair with Node B. In this process, Node A and Node B determine each other's identities, capabilities, and services. For example, after successfully establishing a communication pathwith Node A (e.g., a Bluetooth Low Energy formatted communication path), Node B determines Node A's identity information (e.g., master node), Node A's capabilities include reporting its current battery life, and Node A's services include transmitting its current battery life to other nodes. In response to a request from Node B, Node A transmits an indication of its current battery life to Node B.
11 FIG.B 1134 1135 1136 1137 1138 1140 1142 Referring to, a node(Node C) is associated with a package(Package C). In the illustrated embodiment, the Node C includes a low power communications interface(e.g., a Bluetooth Low Energy communications interface), and a sensor(e.g., a temperature sensor). Another node(Node D), which is associated with another package(Package D), is similarly equipped with a compatible low power communications interface(e.g., a Bluetooth Low-Energy communications interface).
1144 In an example scenario, in accordance with the programmatic code stored in its memory, Node D requires a connection to Node C to perform a task that involves checking the temperature in the vicinity of Node C. Initially, Node D is unconnected to any other nodes. In accordance with the programmatic code stored in its memory, Node D periodically broadcasts advertising packets in the surrounding area. When Node C is within range of Node D and is operating in a listening mode, Node C will extract the address of Node D and potentially other information (e.g., security information) from the advertising packet. If, according to its programmatic code, Node C determines that it is authorized to connect to Node D, Node C will attempt to pair with Node D. In this process, Node C and Node D determine each other's identities, capabilities, and services. For example, after successfully establishing a communication pathwith Node C (e.g., a Bluetooth Low Energy formatted communication path), Node D determines Node C's identity information (e.g., a peripheral node), Node C's capabilities include retrieving temperature data, and Node C's services include transmitting temperature data to other nodes. In response to a request from Node D, Node C transmits its measured and/or locally processed temperature data to Node D.
11 FIG.C 1150 1151 1152 1154 1156 1151 1150 1151 1150 1150 Referring to, a palletis associated with a master nodethat includes a low-power communications interface, a GPS receiver, and a cellular communications interface. In some embodiments, the master nodemay be implemented as a tape node or a label node that is adhered to the pallet. In other embodiments, the master nodemay be implemented as a non-tape node that is inserted within the body of the palletor embedded in or otherwise attached to the interior or exterior of the pallet.
1150 1159 1161 1163 1158 1160 1162 1158 1160 1162 1164 1166 1168 1151 The palletprovides a structure for grouping and containing packages,,each of which is associated with a respective peripheral node,,(Node E, Node F, and Node G). Each of the peripheral nodes,,includes a respective low power communications interface,,(e.g., Bluetooth Low Energy communications interface). In the illustrated embodiment, each of the nodes E, F, G, and the master nodeare connected to each of the other nodes over a respective low power communications path (shown by dashed lines).
1159 1161 1163 1159 1161 1163 1151 1158 1160 1162 1151 1159 1161 1163 1150 1158 1160 1162 1151 1151 1158 1160 1162 1159 1161 1163 1151 1158 1160 1162 In some embodiments, the packages,,are grouped together because they are related. For example, the packages,,may share the same shipping itinerary or a portion thereof. In an example scenario, the master pallet nodescans for advertising packets that are broadcasted from the peripheral nodes,,. In some examples, the peripheral nodes broadcast advertising packets during respective scheduled broadcast intervals. The master nodecan determine the presence of the packages,,in the vicinity of the palletbased on receipt of one or more advertising packets from each of the nodes E, F, and G. In some embodiments, in response to receipt of advertising packets broadcasted by the peripheral nodes,,, the master nodetransmits respective requests to the server to associate the master nodeand the respective peripheral nodes,,. In some examples, the master tape node requests authorization from the server to associate the master tape node and the peripheral tape nodes. If the corresponding packages,,are intended to be grouped together (e.g., they share the same itinerary or certain segments of the same itinerary), the server authorizes the master nodeto associate the peripheral nodes,,with one another as a grouped set of packages. In some embodiments, the server registers the master node and peripheral tape node identifiers with a group identifier. The server also may associate each node ID with a respective physical label ID that is affixed to the respective package.
1151 In some embodiments, after an initial set of packages is assigned to a multi package group, the master nodemay identify another package arrives in the vicinity of the multi-package group. The master node may request authorization from the server to associate the other package with the existing multi-package group. If the server determines that the other package is intended to ship with the multi-package group, the server instructs the master node to merge one or more other packages with currently grouped set of packages. After all packages are grouped together, the server authorizes the multi-package group to ship. In some embodiments, this process may involve releasing the multi-package group from a containment area (e.g., customs holding area) in a shipment facility.
1158 1160 1162 1159 1161 1163 In some embodiments, the peripheral nodes,,include environmental sensors for obtaining information regarding environmental conditions in the vicinity of the associated packages,,. Examples of such environmental sensors include temperature sensors, humidity sensors, acceleration sensors, vibration sensors, shock sensors, pressure sensors, altitude sensors, light sensors, and orientation sensors.
1151 1170 1154 1151 1151 1151 1159 1161 1163 1151 1151 1151 1172 1159 1161 1163 1151 In the illustrated embodiment, the master nodecan determine its own location based on geolocation data transmitted by a satellite-based radio navigation system(e.g., GPS, GLONASS, and NAVSTAR) and received by the GPS receivercomponent of the master node. In an alternative embodiment, the location of the master pallet nodecan be determined using cellular based navigation techniques that use mobile communication technologies (e.g., GSM, GPRS, CDMA, etc.) to implement one or more cell-based localization techniques. After the master nodehas ascertained its location, the distance of each of the packages,,from the master nodecan be estimated based on the average signal strength of the advertising packets that the master nodereceives from the respective peripheral node. The master nodecan then transmit its own location and the locations of the package nodes E, F, and G to a server over a cellular interface connection with a cellular network. Other methods of determining the distance of each of the packages,,from the master node, such as Received Signal-Strength Index (RSSI) based indoor localization techniques, also may be used.
1151 1158 1160 1162 1151 1171 1172 In some embodiments, after determining its own location and the locations of the peripheral nodes, the master nodereports the location data and the collected and optionally processed (e.g., either by the peripheral nodes peripheral nodes,,or the master node) sensor data to a server over a cellular communication pathon a cellular network.
1151 1158 1160 1162 1159 1159 1158 1159 1158 1151 1159 1151 1151 1151 1151 In some examples, nodes are able to autonomously detect logistics execution errors if packages that are supposed to travel together no longer travel together and raise an alert. For example, a node (e.g., the master nodeor one of the peripheral nodes,,) alerts the server when the node determines that a particular packageis being or has already been improperly separated from the group of packages. The node may determine that there has been an improper separation of the particular packagein a variety of ways. For example, the associated peripheral nodethat is bound to the particular packagemay include an accelerometer that generates a signal in response to movement of the package from the pallet. In accordance with its intelligent agent program code, the associated peripheral nodedetermines that the master nodehas not disassociated the particular packagefrom the group and therefore broadcasts advertising packets to the master node, which causes the master nodeto monitor the average signal strength of the advertising packets and, if the master nodedetermines that the signal strength is decreasing over time, the master nodewill issue an alert either locally (e.g., through a speaker component of the master node) or to the server.
12 FIG. 1280 1282 1284 1286 1280 1286 1280 1288 1290 1292 1294 1288 1290 1292 1294 1291 1293 1295 1290 1294 1296 1202 1208 1298 1204 1210 1200 1206 1212 1290 1292 1294 1280 is a schematic illustrating a truckconfigured as a mobile node or mobile hub that includes a cellular communications interface, a medium-power communications interface, and a low power communications interface. The communications interfaces-may be implemented on one or more tape and non-tape nodes. In an illustrative scenario, the truckvisits a logistic storage facility, such as a warehouse, to wirelessly obtain temperature data generated by temperature sensors in the medium range nodes,,. The warehousecontains nodes,, andthat are associated with respective logistic containers,,. In the illustrated embodiment, each node-is a medium range node that includes a respective medium power communications interface,,, a respective low power communications interface,,and one or more respective sensors,,. In the illustrated embodiment, each of the package nodes,,and the truckis connected to each of the other ones of the package nodes through a respective medium power communications path (shown by dashed lines). In some embodiments, the medium power communications paths are LoRa formatted communication paths.
1284 1286 1280 1288 1290 1292 1294 1291 1293 1295 1286 1290 1292 1294 1290 1292 1294 1214 1217 1290 1288 1280 1290 1292 1294 1280 1280 1284 1290 1292 1294 1288 1290 1292 1294 1216 1218 In some embodiments, the communications interfacesand(e.g., a LoRa communications interface and a Bluetooth Low Energy communications interface) on the node on the truckis programmed to broadcast advertisement packets to establish connections with other network nodes within range of the truck node. A warehouseincludes medium range nodes,,that are associated with respective logistic containers,,(e.g., packages, boxes, pallets, and the like). When the truck node's low power interfaceis within range of any of the medium range nodes,,and one or more of the medium range nodes is operating in a listening mode, the medium range node will extract the address of truck node and potentially other information (e.g., security information) from the advertising packet. If, according to its programmatic code, the truck node determines that it is authorized to connect to one of the medium range nodes,,, the truck node will attempt to pair with the medium range node. In this process, the truck node and the medium range node determine each other's identities, capabilities, and services. For example, after successfully establishing a communication path with the truck node (e.g., a Bluetooth Low Energy formatted communication pathor a LoRa formatted communication path), the truck node determines the identity information for the medium range node(e.g., a peripheral node), the medium range node's capabilities include retrieving temperature data, and the medium range node's services include transmitting temperature data to other nodes. Depending of the size of the warehouse, the truckinitially may communicate with the nodes,,using a low power communications interface (e.g., Bluetooth Low Energy interface). If any of the anticipated nodes fails to respond to repeated broadcasts of advertising packets by the truck, the truckwill try to communicate with the non-responsive nodes using a medium power communications interface (e.g., LoRa interface). In response to a request from the medium-power communication interface, the medium range nodetransmits an indication of its measured temperature data to the truck node. The truck node repeats the process for each of the other medium range nodes,that generate temperature measurement data in the warehouse. The truck node reports the collected (and optionally processed, either by the medium range nodes,,or the truck node) temperature data to a server over a cellular communication pathwith a cellular network.
13 FIG. 1330 1332 1334 1336 1338 1340 1330 1342 1344 1346 1348 1338 1340 1350 1352 1354 1356 1330 1338 1340 1358 1360 1362 is a schematic illustrating a master nodeis associated with a logistic item(e.g., a package) and grouped together with other logistic items,(e.g., packages) that are associated with respective peripheral nodes,. The master nodeincludes a GPS receiver, a medium power communications interface, one or more sensors, and a cellular communications interface. Each of the peripheral nodes,includes a respective medium power communications interface,and one or more respective sensors,. In the illustrated embodiment, the peripheral and master nodes are connected to one another other over respective pairwise communications paths (shown by dashed lines). In some embodiments, the nodes,,communicate through respective LoRa communications interfaces over LoRa formatted communications paths,,.
1330 1338 1340 1332 1334 1336 In the illustrated embodiment, the master and peripheral nodes,,include environmental sensors for obtaining information regarding environmental conditions in the vicinity of the associated logistic items,,. Examples of such environmental sensors include temperature sensors, humidity sensors, acceleration sensors, vibration sensors, shock sensors, pressure sensors, altitude sensors, light sensors, and orientation sensors.
1330 1338 1340 1330 1338 1340 1330 1338 1340 1330 1338 1340 1330 1338 1340 1330 1358 1360 1338 1340 1330 1338 1340 In accordance with the programmatic code stored in its memory, the master nodeperiodically broadcasts advertising packets in the surrounding area. When the peripheral nodes,are within range of master node, and are operating in a listening mode, the peripheral nodes,will extract the address of master nodeand potentially other information (e.g., security information) from the advertising packets. If, according to their respective programmatic code, the peripheral nodes,determine that they are authorized to connect to the master node, the peripheral nodes,will attempt to pair with the master node. In this process, the peripheral nodes,and the master nodedetermine each other's identities, capabilities, and services. For example, after successfully establishing a respective communication path,with each of the peripheral nodes,(e.g., a LoRa formatted communication path), the master nodedetermines certain information about the peripheral nodes,, such as their identity information (e.g., peripheral nodes), their capabilities (e.g., measuring temperature data), and their services include transmitting temperature data to other nodes.
1358 1360 1338 1340 1330 1338 1340 1330 After establishing LoRa formatted communications paths,with the peripheral nodes,, the master nodetransmits requests for the peripheral nodes,to transmit their measured and/or locally processed temperature data to the master node.
1330 1366 1342 1330 1330 1330 1334 1336 1330 1330 1330 1372 1334 1336 1330 In the illustrated embodiment, the master nodecan determine its own location based on geolocation data transmitted by a satellite-based radio navigation system(e.g., GPS, GLONASS, and NAVSTAR) and received by the GPS receivercomponent of the master node. In an alternative embodiment, the location of the master nodecan be determined using cellular based navigation techniques that use mobile communication technologies (e.g., GSM, GPRS, CDMA, etc.) to implement one or more cell-based localization techniques. After the master nodehas ascertained its location, the distance of each of the logistic items,from the master nodecan be estimated based on the average signal strength of the advertising packets that the master nodereceives from the respective peripheral node. The master nodecan then transmit its own location and the locations of the package nodes H, J, and I to a server over a cellular interface connection with a cellular network. Other methods of determining the distance of each of the logistic items,from the master node, such as Received Signal-Strength Index (RSSI) based indoor localization techniques, also may be used.
1330 1338 1340 1330 1370 1372 In some embodiments, after determining its own location and the locations of the peripheral nodes, the master nodereports the location data, the collected and optionally processed (e.g., either by the peripheral nodes peripheral nodes,or the master node) sensor data to a server over a cellular communication pathon a cellular network.
Improved User Interface and System for Wireless Tracking System
A setup process for infrastructure of a wireless tracking system is described in further detail in U.S. Pat. No. 11,281,958, filed on Apr. 24, 2020, titled “Wireless Sensor Networks Installation, Deployment, Maintenance, and Operation,” incorporated herein by reference in its entirety.
One aspect of the present embodiments includes the realization that when configurating a wireless tracking system, such as by installing infrastructure nodes within and around a building or structure, it is important to define each location of the infrastructure nodes as accurately as possible. However, there is often no available environmental layout (e.g., an internal layout of an environment such as a floorplan) on which to digitally mark the locations. The present embodiments solve this problem by allowing a user to create a new environmental layout from an image of a floorplan or operational area.
Another aspect of the present embodiments includes the realization that it is useful to show infrastructure nodes on an environmental layout when searching for a tracking node attached to an asset. Particularly, locations defined by coordinates may not be easily interpreted and intuitively understood by the user, whereas an environmental layout (e.g., a floorplan, site plan, map, aerial photograph, etc.) showing infrastructure nodes that have contact with, or had had recent contact with, a lost asset, are invaluable for quickly identifying the location of the lost asset. For example, a client user interface that provides a map (e.g., plan, floorplan, site plan) of a relevant area, populating the map with locations of infrastructure nodes, and then defining the location of the lost assets in the mapped area provides fast assimilation by the user and thereby fast recovery of the lost asset.
Creating an Environmental Layout from an Image
An image of at least a portion of an environmental layout (e.g., a floorplan, site plan, plat map, aerial image, or other drawing/diagram/photograph that shows relationship between features of a given area, preferably as viewed from above.) is uploaded to the wireless tracking system's database and processed to create a map of the local environment for use in the client user interface. A scale of the environmental layout within the image is determined based on a retrieved portion of a geographic map that corresponds to the area of the environmental layout.
14 17 FIGS.- are schematic diagrams showing one example process of uploading an image of a portion of an environmental layout to a tracking system database for use in mapping and locating user interfaces (e.g., a client user interface), according to some embodiments. These figures may be viewed together with the following description.
14 FIG. 8 FIG. 8 FIG. 1400 1405 1420 1430 1420 1410 1401 1405 1430 1430 1430 1400 1415 800 1401 810 812 814 shows one example scenariowhere a useruses a client device(e.g., a smartphone, tablet, laptop computer, or similar computing device) to capture an image(e.g., using a camera of client device) of a displayed environmental layout(e.g., an emergency floorplan) within a building. In certain scenarios, usermay obtain imagefrom other sources, such as web sites, public databases, etc. Although shown as a floorplan of a building, imagemay represent an environmental layout of other operational areas, such as a yard, a parking lot, a parking garage, an outdoor storage yard, a shipyard, a shipping dock, a port, an airport, an outdoor park, an exterior of a building, a warehouse, a storage facility, a storage lot, etc. In certain embodiments, imageis a photograph of the operational area, preferably from an overhead perspective. In scenario, at least one infrastructure nodeof a wireless tracking system (e.g., wireless tracking systemof) is being installed within building. As described above, a gateway node (e.g., mobile gatewaysand, and stationary gateway nodeof) is a wireless node that includes more than one wireless communication interface for bridging communications across devices that use different wireless communications interfaces/protocols. For example, a gateway node may include two or more of Bluetooth, BLE, LoRa, LoRaWAN, Zigbee, Cellular (4G, LTE, 5G, etc.), Satellite, GPS, Wi-Fi communications interfaces. The gateway node may be a flexible adhesive tape platform, another flexible electronic device, a non-flexible electronic device, a device that is battery powered, a device that is line-powered, some other type of electronic wireless communication device, a client device, a smartphone, or some combination thereof. An infrastructure node may be, in embodiments, a gateway node that is generally in a fixed location. For example, the infrastructure node may be line-powered or integrated into the infrastructure of a building, area, or site, in some embodiments. In certain embodiments, the infrastructure node is an adhesive tape platform that is attached to an object or part of an area that does not move.
1420 1425 1430 1410 1401 1410 1415 1401 1410 1401 In embodiments, client deviceruns an appassociated with the wireless tracking system that instructs the user on capturing image. Displayed environmental layoutmay show emergency exits, exit routes, exit stairways, etc., such as displayed in corridors and stairwells to provide safety information to occupants of building. Accordingly, displayed environmental layoutmay be readily available when installing infrastructure nodewithin building. In certain cases, displayed environmental layoutis a partial floorplan of a portion of buildinglocal to where the displayed partial floorplan is mounted.
1415 1415 1401 1415 1401 1425 1405 1430 1410 1415 1415 1420 1410 1420 1425 1415 1401 1405 1430 1704 1401 17 FIG. When installing infrastructure nodeinto an existing wireless tracking network (e.g., adding infrastructure nodeas a new node in a wireless tracking system), the wireless tracking system may already have a mapped environmental layout of building. However, in certain circumstances, such as where infrastructure nodeis being installed in a new wireless tracking system installation for building, a mapped environmental layout may not be readily available. Appmay provide a client user interface that instructs userto capture imageof displayed environmental layoutwhen installing infrastructure node. This instruction may be triggered when a location of the infrastructure nodeto be installed, or a location of the client device, does not correspond to a previously registered environmental layout. Advantageously, through use of client deviceand app, installation of infrastructure nodewithin buildingis simplified since usermay capture imagefor processing by the wireless tacking system to generate a geographic layout (see geographic layout,) for building, as described in detail below.
15 FIG. 1410 1512 1514 1514 1401 1514 1401 shows displayed environmental layoutin further example detail including emergency evacuation instructionsand at least a partial environmental layout. In certain situations, environmental layoutmay represent one entire floor of building. In other situations, environmental layoutmay represent a portion of one floor of building.
1415 1410 1410 1704 1401 Since the wireless tracking system tracks location of wireless tracking devices (e.g., wireless nodes attached to assets) relative to geographic coordinates (e.g., latitude and longitude), location of infrastructure nodeis also defined using geographic coordinates. Accordingly, maps used within the wireless tracking system are geographic maps. That is, for displayed environmental layoutto be effectively displayed within the wireless tracking system, at least the environmental layout, and a determined scale, and optionally an orientation, may form a geographic layoutthat functions as a geographic map for at least part of building(or other area represented at least in part by the environmental layout).
16 FIG. 1620 1622 1430 1405 1425 1425 1405 1620 1622 1430 1514 1430 1425 1405 1620 1622 1430 1425 1620 1622 1430 is a schematic diagram illustrating two example geographic featuresandmarked within imageby userusing app. For example, appinstructs userto define at least two geographic featuresandwithin imagethat may be related to existing maps. One example of a geographic feature is an infrastructure node where the geographic location is known. Another example of a geographic feature is a physical aspect of environmental layoutdefined in imagethat may be discerned from a geographic map. Accordingly, on a graphical user interface of app, usermay interactively mark geographic featuresandon image. Appmay determine pixel coordinates of each geographic featureandwithin image.
17 FIG. 8 FIG. 1620 1622 1704 1704 1425 1430 1620 1622 1720 1720 804 1720 1720 1720 1420 1425 is a data flow diagram illustrating example data movement and processing of captured image and marked geographic featuresandto generate a geographic layoutbased at least on a captured environmental layout and determined scale therefore. The generated geographic layoutis scaled, oriented, and referenced to geographic coordinates. Appsends imageand the identified geographic featuresandto a mapping engineof the wireless tracking system. In certain embodiments, mapping engineis a software algorithm implemented in a server (e.g., serverof). In other embodiments, mapping engineis implemented as a distributed software algorithm within the wireless tracking system, wherein mapping engineis implemented on one or more nodes of the wireless tracking system. In other embodiments, mapping enginemay be implemented on client device, such as a component of appor separate application thereto.
18 FIG. 18 FIG. 1430 1620 1622 1401 1800 1820 1822 1620 1622 1800 1802 1401 1804 1 1804 2 is a schematic diagram illustrating one example technique for determining a scale for image, where each geographic featureand(e.g., corners of building) is matched to corresponding features shown within a geographic map(e.g., a street plan, a satellite view, etc.) to determine real locationsandof geographic featureand, respectively. In the example of, geographic mapshows an outlineof buildingrelative to streets() and(), as found in a geographic map and or satellite view of the area.
1720 1706 1430 1514 1706 1720 1620 1622 1430 1514 1620 1622 1405 1420 1430 1720 1620 1622 1430 1514 23 FIG. Mapping enginedetermines map scalethat is used to convert the relative coordinates (e.g., the image coordinates, pixel coordinates, etc.) and distances between points on image(e.g., environmental layout) to geographic coordinates such that they relate to true, real-world physical distances and coordinates. To determine map scale, mapping engineselects geographic featureandon imageof environmental layoutthat correspond to real-world geographic features. Geographic featureandare selected based on an input from uservia interaction with client device(or another device), in some embodiments. For example, user may input indicate (e.g., input or select) two or more locations on imagethat correspond to corners of a building. In other embodiments, mapping engineautomatically selects geographic featureandusing a computer vision algorithm (seeand associated description) to identify corners of a building in imageof environmental layout.
1720 1806 1620 1622 1430 1720 1706 1430 1620 1622 1430 1806 1806 1430 1720 1430 1620 1622 1704 1704 1430 1706 1720 1704 1730 1420 1720 1704 Mapping enginemay then determine a corresponding vectorbetween the real geographic locations that, with the distance (e.g., in pixels) between the marked geographic featuresandin image, allows mapping engineto determine a map scale(e.g., one or more of orientation, reference, and scaling factor) for image. That is, the distance between the marked geographic featuresandin imagecorresponds to the determined length of vector. Further, vectormay also be used to define the orientation and geographic reference of image. Mapping engineprocesses imageand geographic featuresandto generate a geographic layoutthat is scaled, orientated, and references to geographic coordinates. In certain embodiments, geographic layoutincludes imageand map scale. Mapping enginesends geographic layoutto one or both of a location tracking databaseof the wireless tracking system and client device. In certain embodiments, mapping enginemay combine multiple partial layouts (e.g., each represented by an environmental layout) s into a single geographic layout.
1420 1800 1420 1420 1401 1405 1620 1622 1401 1420 1430 1514 1401 1620 1622 1430 1820 1822 1405 1420 1405 1415 1430 1420 1430 1415 1430 1420 1706 In certain embodiments, a current location of client deviceis used to retrieve geographic map. For example, GNSS location (e.g., GPS) or cellular-based location methods on client device(e.g., a smartphone) are used to determine a current location of client device. In situations where GNSS location operates within building, usermay define geographic featuresandby moving to a location within buildingand interacting with the client deviceto input a point (e.g., dropping a pin) on imageof environmental layoutcorresponding to their current location within building, and repeating this process at additional locations. Thus, geographic featuresanddefined on imageand corresponding real locationsandmay be provided by userand client device. In further embodiments, when userinstalls infrastructure nodeand defines its location on image, location data from client deviceis used to associate its location on imagewith geographic coordinates. Accordingly, when multiple infrastructure nodesare installed, their corresponding points on imageand determined geographic coordinates of client devicemay be used to determine map scale.
1415 1425 1425 1420 1514 1415 1706 1415 1415 Infrastructure nodesthat include a GNSS location interface or cellular-based location capability may report their own geographic coordinates to the wireless tracking system and/or app. Since appalso receives a point, via user interaction with client device, identifying the location of the installed infrastructure node on environmental layout, the geographic coordinates received from each infrastructure nodemay be used to determine map scaleby determining a vector between each point representing infrastructure nodes, and determining scale based on the reported geographic coordinates from the infrastructure nodes.
19 FIG. 17 FIG. 1900 1706 1430 1410 1900 1720 is a flowchart illustrating one example methodfor determining a map scalefor imageof at least a portion of displayed environmental layout. Methodis implemented in mapping engineof, for example.
1902 1900 1902 1720 1430 1514 1420 1902 1430 1514 In block, methodreceives image of at least a portion of an environmental layout (e.g., a floorplan, a photograph of an operational area, or outdoor environmental layout). In one example of block, mapping enginereceives imageof environmental layoutcaptured using client device. In another example of block, the imageis downloaded from an image repository (e.g., a commercial real estate database, an emergency network database storing floorplans, environmental layouts, or images, or another image repository) having the environmental layout.
1904 1900 1904 1720 1800 1401 In block, methodretrieves mapping data for a geographic area corresponding to the portion of the environment layout, the mapping data including at least a portion of a map. In one example of block, mapping engineretrieves geographic mapcorresponding to an address of building.
1906 1900 1906 1720 1820 1822 1800 1620 1622 1430 In block, methodidentifies real locations within the mapping data that correspond to two or more geographic features indicated within the image of the environment layout. In one example of block, mapping engineidentifies real locationsandon geographic mapthat correspond to geographic featuresandindicated with image.
1908 1900 1908 1720 1820 1822 In block, methoddetermines geographic coordinates for each of the identified real locations. In one example of block, mapping enginedetermines geographic coordinates for of each of real locationsand.
1910 1900 1910 1720 1806 1820 1822 1620 1622 1430 In block, methoddetermine a first distance between the at least two real locations based on the geographic coordinates and a second distance between the geographic features within the image. In one example of block, mapping enginedetermines vectorbased on geographic coordinates of real locationsandand a second distance between geographic featuresandindicated with image.
1912 1900 1912 1720 1806 1620 1622 1430 In block, methoddetermines a map scale for the image of the portion of environment layout. In one example of block, mapping enginedetermines a map scale based on vectorand the distance in pixels between geographic featuresandindicated with image.
1720 1430 1720 1425 In certain embodiments, mapping enginegenerates a graphical representative drawing (e.g., a 2D or 3D drawing) of the environment layout for use in lieu of imageof the floorplan. For example, mapping enginemay convert the photograph of the floorplan into a computer-generated drawing (e.g., a simple line drawing, vector drawing, or CAD model) that is more easily used and viewed in app. Advantageously, the computer-generated image may have better visual clarity as compared to a photograph of the environmental layout (e.g., a floorplan).
20 FIG. 1405 1415 1425 1415 1430 1425 1420 1415 1430 1430 1425 2030 1430 1425 2035 1415 is a data flow diagram illustrating example data movement to update and/or define location and radius of added infrastructure nodes. Userinstalls and configures infrastructure nodeand uses the graphical user interface of appto define a location of infrastructure nodewithin image. For example, appmay detect user interaction with the client devicethat defines the location of infrastructure nodewithin image(e.g., user dropping a pin at a location or otherwise indicating a location point in the image), and appmay determine infrastructure locationas pixel coordinates of the selected location within image. Appmay also detect user interaction with the client device that defines a detection radiusof infrastructure node.
1405 1420 1415 1415 1730 1420 1415 1425 1420 1415 1405 1415 1425 2035 1405 1415 1430 1425 2035 1405 1430 1415 1415 1401 In one example of operation, usermay use client deviceto scan a barcode of infrastructure nodeand retrieve configuration data for infrastructure nodebased on the scanned identifier from the wireless tracking system (e.g., from location tracking database). In some embodiments, client devicepairs and configures infrastructure nodebased on the retrieved configuration data. Appmay also detect user interaction with client devicethat defines certain configuration parameters for infrastructure node, such as a detection range. For example, usermay set a detection radius for infrastructure nodeduring its configuration. In one example, appdetermines detection radius(e.g., defined as pixel coordinates) by detecting that the userdrags a distance from the defined location of infrastructure nodewithin image. In another example, appreceives an input value (e.g., three meters) defining detection radius. In another example, usertraces an outline within imageto define an irregularly shaped detection area of infrastructure node(e.g., where detection range of infrastructure nodeis restricted by structure of building).
1425 2030 2035 1730 1425 2040 1730 1401 2040 1514 814 2040 1415 1704 2030 2035 8 FIG. Appsends infrastructure locationand detection radiusto the wireless tracking system where it may be converted to geographic coordinates and stored in location tracking database. Appand other nodes of the wireless tracking system may then retrieve updated infrastructure datafrom location tracking databasefor use in locating assets within building. In certain embodiments, infrastructure datais an image including environmental layout, infrastructure node graphical elements, and detection range graphical elements. Gateway nodes (e.g., stationary gateway) of the wireless tracking system may download and locally store at least part of infrastructure data. For example, infrastructure nodemay download at least part of geographic layout, infrastructure location, and detection radius.
21 FIG.A 14 FIG. 21 FIG.A 1 FIG. 1 FIG. 8 FIG. 1401 1415 1 4 1415 1401 2102 110 2104 113 818 1401 2104 2102 2104 is a schematic of buildingofshowing example positions for four infrastructure nodes()-(). Infrastructure nodesare positioned within different spaces of buildingto provide the wireless tracking system with tracking coverage therein. For purpose of the following example,also shows an example asset(e.g., package,), fitted with a tracking node(e.g., segment,, tape node,, etc.), located within building. Tracking nodemay represent an adhesive tape platform node attached to mobile assetthat is moved around, such as during delivery of the asset. Tracking nodemay also be referred to as an “asset node.”
21 FIG.B 14 FIG. 2100 1420 2040 1401 1425 1420 1730 2040 1401 1425 1415 2100 1514 2105 2115 1415 2120 2115 2115 1 1415 1 1401 2115 2 1415 2 1401 2120 1 1415 1 2120 2 1415 2 2100 1405 1415 1401 shows one example mapping display(e.g., as displayed by client device) and illustrating at least part of infrastructure datacorresponding to buildingof. For example, appmay retrieve, from internal memory of client deviceor from an external server hosting location tracking database, at least part of infrastructure databased on its determined location within building. In certain embodiments, appmay determine its location based on wireless signals from one or more infrastructure nodes. Mapping displayincludes at least part of environmental layoutoverlayed with a map scale bar, at least one node graphical elementeach representing a location of one infrastructure node, and one detection range graphical elementfor each node graphical element. For example, node graphical element() represents a location of a first infrastructure node() within building, and node graphic element() represents a location of a second infrastructure node() within building. Detection range graphical element() represents a detection range of the first infrastructure node() and detection range graphical element() represents a detection range of the second infrastructure node(). Advantageously, mapping displayallows userto rapidly assimilate coverage of infrastructure nodeswithin at least part of building.
1415 2104 1415 800 2104 1415 2104 1415 1415 2104 1415 2104 1415 8 FIG. Infrastructure nodesare configured to detect tracking node(or any wireless node) when it enters a detection region of the infrastructure node based on wireless communications between the infrastructure node and the other wireless node. Each infrastructure nodemay be configured to detect/report to the wireless tracking system (e.g., wireless tracking system,) all wireless nodes of the tracking system that wirelessly communicate with the infrastructure node and are within a detection range (e.g., 2.5 meters) of the infrastructure node. The detection region of each infrastructure node may be adjustable and may be less than a maximum communication range of the infrastructure node. For example, tracking nodeand infrastructure nodemay be able to communicate outside the detection range (e.g., with a weaker signal at longer distances), but ignore each other until tracking nodeis within the defined detection range of infrastructure node. For example, a desired detection range may be set during configuration of the infrastructure node. In certain embodiments, infrastructure nodeis configured to determine a distance (based partially on received signal strength, e.g., RSSI) of tracking node, reporting its location when the distance is within the detection range and ignoring any tracking node that is at a distance greater than the detection range. In other embodiments, infrastructure nodebroadcasts its detection range and tracking nodeonly communicates with infrastructure nodewhen it determines, based on signal strength for example, that it is within the detection range of the infrastructure node.
2104 1415 2104 2104 1415 In certain embodiments, tracking nodereceives a broadcast from infrastructure nodethat includes a description of the detection range (e.g., a detection radius) of the infrastructure node. Tracking nodethen determines its distance from the first wireless node (e.g., based on signal strength) and when the distance is greater than the defined detection range, tracking nodedoes not interact with infrastructure node.
22 FIG. 14 FIG. 21 FIG. 2200 1420 2040 1401 2220 2 2115 2 2200 2100 2202 2200 2220 2 1415 2 2204 2204 1425 1420 1405 2220 2 1415 2 1514 1405 1420 1425 1425 1405 1420 2200 2200 1420 1514 1514 1415 1415 1415 shows one example mapping display(e.g., as displayed by client device) showing at least part of infrastructure datacorresponding to buildingofand illustrating one example augmented detection range graphical element() for node graphical element(). Mapping displayis shows at greater magnification than mapping displayofand includes a corresponding map scale bar, indicative of the scale of mapping display. Particularly, augmented detection range graphical element() depicting a more accurate detection range for the second infrastructure node() corresponding to the shape and size of a roomwhere it is located. For example, where walls of roomrestrict or block transmission of wireless signals, appmay detect interaction with client deviceby userthat defines augmented detection range graphical element() to represent the detection area of the second infrastructure node() more accurately. In one example, interfering or blocking portions of environmental layoutmay be indicated by uservia interaction with client deviceand app. For example, appdetect userinteraction with client deviceto draw a shape of the detection region on the mapping display. That is, mapping displayincludes an option to draw on a touch screen of client device(or using a mouse, electronic pencil, etc.) to depict the detection region overlaid on environmental layout. In another example, the wireless tracking system determines the interfering or blocking portions of environmental layoutbased on retrieved data from infrastructure nodes. In another example, a detection range of one or more infrastructure nodesmay be augmented/adjusted based on sensor data collected by infrastructure nodes(or other wireless nodes) in the environment. For example, one or more tape nodes in the environment may include a humidity sensor. Based on a detected humidity level in the environment of a wireless node, the detection region of the wireless node may be adjusted. For example, a radius of a detection region may be reduced when a higher-than-normal humidity level is detected. In certain embodiments, the detection region is augmented based on receiving sensor data outside of a normal range. In another embodiment, detection region may be augmented based on known construction characteristics of structure indicated within the environmental layout such as when a wall indicated in the environmental layout is configured in a manner that wireless signals will not propagate well through a thick wall, or a steel wall, or a vault, etc.
1415 1405 2102 2104 1401 Advantageously, by more accurately representing the detection range of each infrastructure node, userhas a greater understanding of tracking by the wireless tracking system and is thereby aided in finding tracked assets (e.g., assetwith tracking node) within building.
23 FIG. 24 FIG. 23 FIG. 17 FIG. 23 24 FIGS.and 2300 2302 2302 1720 is a data flow diagram illustrating one example training configurationfor training a mapping machine learning modelto automatically scale, orient, and reference an environmental layout (e.g., a floorplan) image to a geographic map.is a data flow diagram illustrating example use of trained mapping machine learning modelofwithin mapping engineof.and best viewed together with the following description.
2302 2305 2304 2307 2306 2309 2308 2302 2305 2307 2309 2310 Mapping machine learning modelreceives training geographic mapsfrom a training map database, training layout imagesfrom a training layout image database, and optionally, training image points and geographic coordinate labelsfrom a training image point and geographic coordinate label database. For supervised learning, a user optionally inputs training points on the training images and defines corresponding geographic coordinate labels. Mapping machine learning modelprocesses training geographic maps, training layout images, and optionally, training image points and geographic coordinate labelsto generate trained parameters.
1720 1430 2430 1401 1420 1720 2406 2404 2430 2302 2310 1430 2406 2408 1430 1706 1430 2302 1430 2406 Mapping enginereceives imageand an address(e.g., a postal address of buildingor other geographic reference for the area) from client device, Mapping engineretrieves a geographic area mapfrom mapping databasebased on addressand then controls mapping machine learning modelto use trained parametersto match imageto geographic area mapto generate geographic layoutincluding imageand map scalethat defines orientation, reference, and scaling factor for image. That is, trained mapping machine learning modelautomatically aligns and scales imagewith geographic area map.
1720 1405 1405 1420 1514 As described above, mapping engineallows userto capture an image of a displayed layout and use it to accurately define locations of infrastructure nodes and their detection ranges. Advantageously, the infrastructure nodes may be deployed and located without requiring a trained technician, since usermay use client deviceto generate and calibrate the imaged layout (e.g., environmental layout) for use with defining added infrastructure locations and for locating tracked assets.
25 FIG. 2500 1514 2502 2515 2520 2500 1405 1401 2500 1405 is a schematic illustrating one example mapping interfaceshowing environmental layout, a map scale, node graphical elementsand corresponding detection range graphical elements. Mapping interfaceallows userto quickly see tracking coverage by the wireless tracking system within the displayed portion of building. Mapping interfacemay allow userto zoom in and out and pan the displayed environmental layout as needed to view the desired detail.
25 FIG. 2520 1415 In the example of, detection range graphical elementsfurther illustrate overlap that provide additional information for locating tracked assets, particularly where the node on the asset is concurrently detected by two different infrastructure nodes.
25 FIG. 25 FIG. 2504 1420 1514 1420 1415 1425 1706 1420 2504 1430 1405 2504 2504 2504 also shows a client graphical elementthat indicates a current location of client devicewithin environmental layout. For example, client devicemay determine its location based on one or more of cellular triangulation/trilateration, GPS, Wi-Fi RSS, or based on trilateration of a Bluetooth connection with infrastructure nodes. Appmay then convert, using map scale, the determined location of client deviceto pixel coordinates and overlay client graphical elementonto image. Accordingly, usermay easily see their relative location when searching for an asset. Although the client graphical elementis shown as a circle in the example of, the graphical elementmay be visually different, according to other embodiments. For instance, the client graphical elementmay be a graphical representation of a person, have a shape of a chevron, or include other graphics.
26 FIG. 17 FIG. 2600 2600 1720 is a flowchart illustrating one example methodfor overlaying a scaled version of a detection region of an infrastructure node on an image of a portion of a environmental layout in a mapping user interface. Methodis implemented in mapping engineoffor example.
2602 2600 2602 1720 1415 1 4 2602 1720 1430 1415 1 4 1730 1415 In block, methodretrieve positions of infrastructure nodes in a portion of an environment. In one example of block, mapping enginereceives geographic location information (e.g., geographic coordinates) of infrastructure nodes()-(). In another example of block, mapping enginereceives relative location information (e.g., cartesian coordinates relative to image) of infrastructure nodes()-(). In certain embodiments, location tracking databasestores one or both of geographic coordinates and cartesian coordinates of each infrastructure node.
2604 2600 2604 1720 1706 1430 2606 2600 2606 1720 2035 1730 In block, methodretrieves a map scale for an image of the portion of the environment. In one example of block, mapping engineretrieves map scalefor image. In block, methodretrieves detection regions for the infrastructure nodes. In one example of block, mapping engineretrieves detection radiusfrom location tracking database.
2608 2602 2600 2608 1720 1706 1415 1430 2035 1430 In block, where geographic location information is retrieved in block, methodconverts infrastructure node location from geographic coordinates to pixel coordinates based on the map scale. In one example of block, mapping engineuses map scaleto convert geographic coordinates of infrastructure nodeto pixel coordinates of image, and converts detection radiusfrom a distance (e.g., four meters) to pixel coordinates of image.
2610 2600 2610 1720 1706 2115 1 2115 2 2120 1 2120 2 1430 In block, methodgenerates node graphical elements and detection region graphical elements. In one example of block, mapping engineuses map scaleto generate node graphical element(), node graphic element(), detection range graphical element(), and detection range graphical element() as overlays for image.
2612 2600 2612 1720 2115 1 2115 2 2120 1 2120 2 1430 In block, methodoverlays the node graphical elements and the detection region graphical elements on the image of the portion of the environment. In one example of block, mapping engineoverlays node graphic element(), node graphic element(), detection range graphical element(), and detection range graphical element() into imagebased on the determined pixel coordinates.
Improved Asset Location
27 FIG. 17 FIG. 2700 1720 1405 2104 2102 2700 1420 2702 2704 2102 1425 1420 2700 1420 1405 2704 1405 1420 2102 2104 2104 2102 2104 2104 2104 1415 2104 shows one example locating interfacethat is generated by mapping engineofto aid userin locating tracking node, and thereby asset. Locating interfaceis displayed by client devicewhen a search is initiated and may include an interactive dialog boxfor receiving an asset identifiercorresponding to assetfor example. For example, apprunning on client devicemay implement an asset location application that implement locating interface. In one example, client devicedetects interaction by userentering asset identifier. In another example, usercontrols client deviceto scan a barcode or QR code corresponding to assetand/or tracking node. For example, the corresponding barcode may be a valet tag or portion (e.g., a tear-off portion) of tracking nodethat is separated from asset. In another example, the wireless tracking system determines that tracking nodeis outside an expected area and initiates a search for tracking node. In another example, the wireless tracking system determines that no communication between tracking nodeand an expected infrastructure nodehas occurred for over a threshold period of time and initiates a search for tracking node.
1425 2704 1720 2704 Appsends asset identifierto mapping engine, which may communicate with other components of the wireless tracking system to translate the asset identifierinto a node identifier as needed.
1720 1730 804 1415 1 4 2104 1415 1 4 2104 1415 1 1415 2 2104 1415 3 2104 1415 4 2104 1415 1720 2715 1720 2715 1 2715 2 2715 3 2715 4 1720 2715 1415 2104 27 FIG. 27 FIG. Mapping engineinterrogates location tracking database(and/or other components of the wireless tracking system, such as server) to determine a communication recency between each infrastructure node()-() and tracking node(e.g., when each infrastructure node()-() last communicated with tracking node). In the example of, infrastructure nodes() and() are currently communicating with tracking node, infrastructure node() recently (e.g., within the last two hours) communicated with tracking node, and infrastructure node() communicated with tracking nodein the past (e.g., more than two hours ago). In certain embodiments, based on the communication recency of each infrastructure node, mapping enginegenerates node graphical elementswith a characteristic (e.g., one or more of shape, fill, size, color, etc.) corresponding to their communication recency. In the example of, mapping enginegenerates node graphical elements() and() using a first color (e.g., green) to indicate current communication, generates node graphical element() in a second color (e.g., yellow) to indicate recent communication, and generates node graphical element() in a third color (e.g., red) to indicate past communication. As appreciated, more of fewer communication period and/or different characteristics may be used without departing from the scope hereof. In certain embodiments, mapping enginemay display node graphical elementsfor infrastructure nodesthat have never communicated with tracking nodeon the asset as gray nodes. Colors green, red, yellow, and gray are used as example herein, however, the embodiments disclosed herein are not limited these colors, shapes, and graphics.
1720 2720 1415 1415 1720 2720 1 2720 2 2720 3 2720 4 1514 1401 2700 1405 2706 2720 1 2720 2 1415 1 1415 2 In certain embodiments, mapping enginemay depict detection range graphical elementsof each infrastructure nodein a corresponding color based on the last communication status of each infrastructure node. For example, mapping enginegenerates detection range graphical elements() and() in a translucent green color, detection range graphical element() in a translucent yellow color, and detection range graphical element() in a translucent red color. Accordingly, areas of environmental layoutcovered in translucent green represent areas of buildingwhere the asset is likely to be found. Advantageously, Advantageously, locating interfaceallows userto rapidly assimilate locations where the asset is likely to be found. More particularly, an overlap areaof detection range graphical elements() and() represents the most likely location for the asset, since it is currently in communication with both infrastructure node() and().
28 FIG. 27 FIG. 2800 2700 1720 2720 3 2720 4 1720 2720 1415 1 1415 2 2104 2800 2715 3 shows one example locating interfacethat is similar to locating interfaceofbut where mapping enginehas hidden less important detection range graphical elements() and(). In this example, importance is determines based on the last communication time, where current communication is the highest importance, and no communication is the lowest importance. Accordingly, mapping enginedisplays detection range graphical elementsof the highest importance available within the portion of the environment displayed. In another example, when infrastructure nodes() and() are not currently communicating with tracking node, locating interfacemay only show node graphical element() (e.g., a yellow dot) and a corresponding detection range graphical element in translucent yellow.
2720 3 2720 4 1405 2102 Advantageously, by hiding less important detection range graphical elements() and(), useris less distracted by less relevant data and learns more quickly of areas to search for asset.
29 FIG. 28 FIG. 2900 2800 1720 2706 2720 1 2720 2 2706 2900 1405 2102 2706 2720 2706 2720 shows one example locating interfacethat is similar to locating interfaceofbut where mapping engineonly highlights overlap areaof detection range graphical elements() and() in the translucent color (e.g., green). Advantageously, by only showing overlap areain translucent color, locating interfacehighlights the most important area for userto search for asset. In certain embodiments, overlap areais colored based on a number of overlapping detection range graphical elements. For example, the shade of green for overlap areais darker for higher numbers of detection range graphical elementsthat overlap.
30 FIG. 29 FIG. 3000 2900 1720 2720 1 2720 2 2706 2706 1410 2706 2900 1405 2720 1 2720 2 shows one example locating interfacethat is similar to locating interfaceofbut where mapping enginefurther hides detection range graphical elements() and(), leaving only overlap areain translucent color. In certain embodiments, overlap areamay be represented as a generic shape (e.g., circle, rectangle, etc.) or a shape that matches the features of environmental layout(e.g., conforming to walls). Advantageously, by only showing overlap areain translucent color, locating interfacehighlights the most important area for userto search for the asset without the distraction of detection range graphical elements() and().
3000 3002 1420 1514 1405 Locating interfacemay also show a client graphical elementthat indicates a current location of client devicewithin environmental layout. Accordingly, usermay easily see which direction to walk when searching for the asset.
3000 3006 1405 3002 2102 In certain embodiments, locating interfacemay also display a route guidance graphical overlay(e.g., one or more arrows, a breadcrumb trail, etc.) that guide userfrom the location indicated by client graphical elementto an area in which to search for asset.
31 31 FIGS.A andB 3102 3152 1420 2104 2102 1405 3102 3152 1425 3102 3152 1420 2104 1425 3000 3102 3152 1420 2014 3102 3152 2102 1405 show example proximity searching interfacesand, respectively, for indicating proximity of client deviceto tracking nodeof asset. Usermay switch to one of proximity searching interfacesandas needed or appmay automatically switch to one of proximity searching interfaces/when client deviceestablished communication with tracking node. For example, appmay automatically stop displaying locating interfaceand display one of searching interfacesandas client deviceapproaches tracking nodeand short-range communication is established between the client device and the tracking node. Proximity searching interfacesandmay be particularly useful when assetis at least partially hidden from user.
1425 2104 1425 1420 2104 3102 3104 3106 1425 3106 3107 1420 2104 1420 2104 3106 1425 3108 3110 1420 2104 3108 3110 When appis in communication with tracking node, appmay determine a distance (e.g., based on signal strength) between client deviceand tracking node. Proximity searching interfaceshows a dialwith a needlethat are similar to a Geiger counter display. Appcauses needleto move from left to right, as indicated by arrow, based on a distance between client deviceand tracking node. That is, the closer client devicegets to tracking node, the further right needle. Appmay also provide a visual promptand/or an audio signalindicative of proximity of client deviceto tracking node. For example, visual promptmay change messages at various distances, and audio signalmay change characteristics (e.g., clicking rate, tone frequency, volume, etc., or combination thereof) based on the distance.
3152 3154 3156 3157 1420 2104 2104 3156 3154 Proximity searching interfaceshows a barwith a filled portionthat changes, as indicated by arrow, based on a distance between client deviceand tracking node. For example, as client device approaches tracking node, filled portionoccupies more of bar.
2700 2800 2900 3000 3102 3152 1425 2102 1401 27 28 29 30 FIGS.,,, and 31 31 FIGS.A andB Advantageously, through use of one or more locating interfaces,,, andof, and one or more of proximity searching interfacesandof, appprovides easily assimilated information for finding assetwithin building.
32 FIG. 3200 1730 is a global locating interfacefor locating an asset anywhere in the world. The wireless tracking system may include a global network of wireless nodes where locations of all wireless nodes in the wireless tracking system are recorded in location tracking database.
3200 3202 2704 1405 3206 1720 1730 1720 3215 3215 3200 3215 1 3215 2 3215 3 3215 4 32 FIG. Global locating interfaceincludes an interactive dialog boxfor receiving an asset identifier(e.g., entered by useror scanned from a barcode etc.), and at least part of a world map. Mapping enginesearches location tracking databaseto retrieve infrastructure data corresponding to any globally located infrastructure nodes that have current communication, recent communication, or past communication, with the tracking node attached to the asset. Mapping enginethen overlays, based on the recorded location of the globally located infrastructure nodes, a most relevant set of node graphical elements, where a color or other characteristic of each node graphical elementsindicates a priority of the reported location for the asset. In the example of, global locating interfaceshows a green node graphical element() that indicates a location of an infrastructure node in current contact with the tracking node on the asset, two yellow node graphical elements() and() that indicate locations of infrastructure nodes in recent contact with the tracking node on the asset, and a red node graphical element() that indicates a location of an infrastructure node that has had past contact with the tracking node on the asset.
1405 1420 3200 3200 1405 1425 3200 2700 2800 2900 3000 1405 27 28 29 30 FIGS.,,, and Advantageously, usermay interact with client deviceand global locating interfaceto locate an asset (e.g., using its tracking node) that is currently communicating, has recently communicated, and/or has communicated in the past with infrastructure nodes. For example, global locating interfacemay allow userto zoom in on a specific location to view details at a more granular level. Appmay switch from global locating interfaceto one of locating interfaces,,,, of, respectively, when userzooms in on a specific location.
1425 1420 810 822 8 FIG. In certain embodiments, non-infrastructure nodes of the wireless tracking system may operate to locate wireless tracking nodes. For example, apprunning on client devicemay operate as a gateway node (e.g., see mobile gatewayand client applicationof) that interacts and locates nearby wireless tracking nodes using its current location.
2700 2800 2900 3000 3200 1420 27 28 29 30 FIGS.,,, and 30 FIG. Each of locating interfaces,,,, of, and global locating interfaceofmay be updated in real time as client devices (e.g., client device) move throughout an environment.
33 FIG. 1 FIG. 4 FIG. 6 6 6 FIGS.A,B, andC 8 FIG. 9 FIG. 11 FIGS.A-C 12 FIG. 13 FIG. 14 FIG. 17 FIG. 23 FIG. 3320 3320 113 114 410 640 670 680 804 810 812 818 828 832 842 846 860 866 904 982 976 972 1120 1126 1134 1138 1158 1160 1162 1151 1290 1291 1292 1294 1330 1338 1340 1415 1420 1720 3320 3322 3324 3326 3322 3320 3322 3324 3324 3320 3326 3320 3328 3326 shows an example embodiment of computer apparatusthat, either alone or in combination with one or more other computing apparatus, is operable to implement one or more of the computer systems described in this specification. For example, computer apparatusmay represent any of segments,, wireless transducing circuit, wireless transducing circuit,, segments,,of, server(s), mobile gateways,, and tape nodes,,,,,,of, server(s), tape nodes,,of, nodes,,,,,,, andof, nodes,,, andof, nodes,, andof, infrastructure nodeand client deviceof, mapping engineof, and mapping machine learning model of. The computer apparatusincludes a processing unit, a system memory, and a system busthat couples the processing unitto the various components of the computer apparatus. The processing unitmay include one or more data processors, each of which may be in the form of any one of various commercially available computer processors. The system memoryincludes one or more computer-readable media that typically are associated with a software application addressing space that defines the addresses that are available to software applications. The system memorymay include a read only memory (ROM) that stores a basic input/output system (BIOS) that contains start-up routines for the computer apparatus, and a random-access memory (RAM). The system busmay be a memory bus, a peripheral bus, or a local bus, and may be compatible with any of a variety of bus protocols, including PCI, VESA, Microchannel, ISA, and EISA. The computer apparatusalso includes a persistent storage memory(e.g., a hard drive, a floppy drive, a CD ROM drive, magnetic tape drives, flash memory devices, and digital video disks) that is connected to the system busand contains one or more computer-readable media disks that provide non-volatile or persistent storage for data, data structures and computer-executable instructions.
3320 3330 3332 3334 3320 3320 3336 A user may interact (e.g., input commands or data) with the computer apparatususing one or more input devices(e.g. one or more keyboards, computer mice, microphones, cameras, joysticks, physical motion sensors, and touch pads). Information may be presented through a graphical user interface (GUI) that is presented to the user on a display monitor, which is controlled by a display controller. The computer apparatusalso may include other input/output hardware (e.g., peripheral output devices, such as speakers and a printer). The computer apparatusconnects to other network nodes through a network adapter(also referred to as a “network interface card” or NIC).
3324 3338 3340 3341 3320 3342 3344 3346 A number of program modules may be stored in the system memory, including application programming interfaces(APIs), an operating system (OS)(e.g., the Windows® operating system available from Microsoft Corporation of Redmond, Wash. U.S.A.), software applicationsincluding one or more software applications programming the computer apparatusto perform one or more of the steps, tasks, operations, or processes of the positioning and/or tracking systems described herein, drivers(e.g., a GUI driver), network transport protocols, and data(e.g., input data, output data, program data, a registry, and configuration settings).
Additional Configuration Information
The foregoing description of the embodiments of the disclosure have been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
Some portions of this description describe the embodiments of the disclosure in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
Embodiments of the disclosure may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
Embodiments of the disclosure may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the disclosure be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments is intended to be illustrative, but not limiting, of the scope of the disclosure, which is set forth in the following claims.
In certain embodiments, a method of finding an asset, includes: determining a distance between a client device and a tracking node of the asset based at list in part on a signal strength of a wireless communication between the client device and the tracking node; and displaying, on the client device, a searching interface having a graphical meter, wherein the graphical meter indicates the distance between the client device and the tracking node.
The method may further include displaying a needle on a scale to form the graphical meter, wherein the needle moves in real time based on the distance between the client device and the tracking node.
The method may further include displaying a fill bar on a bar scale to form the graphical meter, wherein the fill bar moves in real time based on the distance between the client device and the tracking node.
The method may further include generating an audio output indicative of the distance between the client device and the tracking node. Wherein audio characteristics of the audio output indicate the distance, wherein the audio characteristics are selected from the group comprising: a frequency of a clicking sound, a frequency of a tone, and a volume of the tone.
Combination of Features
(A1) A method includes: receiving an image of at least part of an environmental layout; receiving at least two geographic feature locations associated with the image; determining at least two geographic locations each corresponding to a respective one of the at least two geographic feature locations; determining a map scale for the images based on the at least two geographic feature locations and the at least two geographic locations; and wherein the map scale allows conversion between points on the image and geographic locations. (A2) In embodiments of (A1), the at least part of the environmental layout comprises at least part of a floorplan. (A3) In either of embodiments (A1) or (A2), the image being captured by, and received from, a client device. (A4) In any of embodiments (A1)-(A3), the determining at least two geographic locations includes training a machine learning model to match the at least two geographic feature locations to matched geographic locations of a geographic map; and determining the at least two geographic locations each corresponding to a respective one of the matched geographic locations. (A5) In any of embodiments (A1)-(A4), the map scale defining an orientation, a reference, and a scaling factor for the image. (A6) In any of embodiments (A1)-(A5), using at least the image and the map scale to form a geographic layout of an area at least partially represented by the image. (A7) Any of embodiments (A1)-(A6) further including retrieving an infrastructure location for each of at least one infrastructure node in an environment; retrieving at least part of the geographic layout based at least in part on the infrastructure location; generating a mapping interface based at least in part on the at least part of the geographic layout; generating a node graphical element for each of the at least one infrastructure node based on the map scale; and overlaying the node graphical element on the mapping interface based at least in part on the infrastructure location and the map scale. (A8) Any of embodiments (A1)-(A7) further including retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region and the map scale; and overlaying the detection range graphical element on the mapping interface based at least in part on the infrastructure location and the map scale. (A9) In any of embodiments (A1)-(A8), the node graphical element being scaled based on the map scale. (A10) Any of embodiments (A1)-(A9) further including determining a tracking node corresponding to an asset to be found; identifying at least one infrastructure node having communicated with the tracking node; determining, for each of the at least one infrastructure node, a communication recency between the infrastructure node and the tracking node, wherein a priority order of values for the communication recency from highest to lowest is: current communication, recently communicated, and past communication; retrieving an infrastructure location for each of the at least one infrastructure node; retrieving at least part of the geographic layout based on the infrastructure location; generating a locating interface based on the at least part of the geographic layout; generating a node graphical element for each of the at least one infrastructure node based on the map scale, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the node graphical element on the locating interface based on the infrastructure location and the map scale. (A11) Any of embodiments (A1)-(A10) further including retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region and the map scale, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based at least in part on the infrastructure location and the map scale. (A12) Any of embodiments (A1)-(A11) further including retrieving a detection region for each of the at least one infrastructure node; when the communication recency of the at least one infrastructure node is at a highest priority, generating a detection range graphical element based on the detection region and the map scale, wherein a color of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based on the infrastructure location and the map scale. (A13) Any of embodiments (A1)-(A12) further including determining at least two of the at least one infrastructure node having the communication recency of current communication; retrieving a detection region for each of the at least two infrastructure nodes; generating an overlap area graphical element for an overlap area between the detection region of each of the at least two infrastructure nodes; and overlaying the overlap area graphical element on the locating interface based on the infrastructure location and the map scale. (A14) Any of embodiments (A1)-(A13) further including determining a current location of a client device; generating a client device graphical element for the client device; and overlaying the client device graphical element on the locating interface based on the current location and the map scale. (A15) In any of embodiments (A1)-(A14), the node graphical element being scaled based on the map scale. (A16) In any of embodiments (A1)-(A15), the determining the tracking node including detecting user interaction with a user device indicating request from a user to find the asset. (A17) In any of embodiments (A1)-(A16), the determining the tracking node including determining that the tracking node is outside an expected area. (A18) In any of embodiments (A1)-(A17), the determining the tracking node including determining that the tracking node has not communicated with an expected infrastructure node for over a threshold period of time. (B1) A method includes: receiving an image captured by a user device of at least part of an environmental layout; generating, based on the image, a geographic layout associated with an area depicted in the image; and outputting the geographic layout for use in a client device interface. (B2) In embodiments of (B1), the user device is the same device running the client device interface. (B3) In either of embodiments (B1) or (B2), the outputting including storing the geographic layout in a cloud server for on-demand access by another user device. (B4) Any of embodiments (B1)-(B3) further including receiving at least two geographic feature locations associated with the image; determining at least two geographic locations each corresponding to a respective one of the at least two geographic feature locations; determining a map scale for the image based on the at least two geographic feature locations and the at least two geographic locations; and wherein the map scale allows conversion between points on the image and geographic locations. (B5) In any of embodiments (B1)-(B4), the receiving, from the user device, at least two geographic feature locations including receiving Cartesian coordinates of the at least two geographic feature locations interactively selected on the image by the user. (B6) Any of embodiments (B1)-(B5) further including receiving an indication of a tracking node to be tracked; determining a location of the tracking node; accessing a location database to retrieve at least part of the geographic layout associated with the determined location; and outputting the associated geographic layout to the user device. (B7) In any of embodiments (B1)-(B6), receiving the indication including determining that the tracking node has not communicated with an infrastructure node for at least a predefined period. (B8) In any of embodiments (B1)-(B7), receiving the indication including detecting user interaction with the user device indicating a request from a user to find an asset associated with the tracking node. (B9) In any of embodiments (B1)-(B8), the client device interface is an asset location application. (B10) Any of embodiments (B1)-(B9) further including receiving a location of an infrastructure node; and overlaying a graphical representation of the infrastructure node on the geographic layout at a position corresponding to the received location of the infrastructure node. (B11) In any of embodiments (B1)-(B10), the receiving the location of the infrastructure node including receiving, from the user device, Cartesian coordinates indicative of a user selected location of the infrastructure node on the geographic layout. (C1) A method includes: determining a tracking node corresponding to an asset to be found; identifying at least one infrastructure node having communicated with the tracking node; determining, for each of the at least one infrastructure node, a communication recency between the infrastructure node and the tracking node, wherein a priority order of values for the communication recency from highest to lowest is: current communication, recently communicated, and past communication; retrieving an infrastructure location for each of the at least one infrastructure node; retrieving at least part of a geographic layout based on the infrastructure location; generating a locating interface based on the at least part of the geographic layout; generating a node graphical element for each of the at least one infrastructure node, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the node graphical element on the locating interface based on the infrastructure location. (C2) The embodiment (C1) further including retrieving a detection region for each of the at least one infrastructure node; generating a detection range graphical element based on the detection region, wherein a characteristic of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based at least in part on the infrastructure location. (C3) In either of embodiments (C1) or (C2), communication between the tracking node at the at last one infrastructure node occurs only when the tracking node is within the detection region of the infrastructure node. (C4) In any of embodiments (C1)-(C3), the infrastructure node determines a range of the tracking node and communicates only when the range indicates the tracking node is within the detection region. (C5) In any of embodiments (C1)-(C4), the infrastructure node broadcasts its detection region and the tracking node communicates with the infrastructure node only when the tracking node determines it is within the detection region. (C6) In any of embodiments (C1)-(C5), the detection region is less than a maximum wireless communication range of the infrastructure node. (C7) Any of embodiments (C1)-(C6) further including retrieving a detection region for each of the at least one infrastructure node; when the communication recency of the at least one infrastructure node is at a highest priority, generating a detection range graphical element based on the detection region and the map scale, wherein a color of the node graphical element is based on the communication recency; and overlaying the detection range graphical element on the locating interface based on the infrastructure location and the map scale. (C8) Any of embodiments (C1)-(C7) further including determining at least two of the at least one infrastructure node having the communication recency of current communication; retrieving a detection region for each of the at least two infrastructure nodes; generating an overlap area graphical element for an overlap area between the detection region of each of the at least two infrastructure nodes; and overlaying the overlap area graphical element on the locating interface based on the infrastructure location and the map scale. (C9) Any of embodiments (C1)-(C8) further including the method includes determining a current location of a client device; generating a client device graphical element for the client device; and overlaying the client device graphical element on the locating interface based on the current location and the map scale. Features described above as well as those claimed below may be combined in various ways without departing from the scope hereof. The following enumerated examples illustrate some possible, non-limiting combinations:
Changes may be made in the above methods and systems without departing from the scope hereof. It should thus be noted that the matter contained in the above description or shown in the accompanying drawings should be interpreted as illustrative and not in a limiting sense. The following claims are intended to cover all generic and specific features described herein, as well as all statements of the scope of the present method and system, which, as a matter of language, might be said to fall therebetween.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
November 15, 2022
July 14, 2026
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.