The present technology pertains to systems and methods for electronic label localization and mesh network desynchronization.
In various embodiments the technologies presented herein include a method for presence detection based three-dimensional localization of electronic labels, comprising placing one or more fixed anchor electronic labels in known positions in three-dimensional space; sending data packets via radio frequency signals from one or more unknown positioned electronic labels, wherein the radio frequency signals are set to reach preset maximum distances, the data packets from each of the one or more unknown positioned electronic labels including identifying data of the particular unknown positioned electronic label it originates from; receiving the data packets signals by the one or more fixed anchor electronic labels; and assuming, based on the preset maximum distances, a maximum distance position, of the one or more unknown positioned electronic labels from which the data packets where received, from each of the one or more fixed anchor electronic labels that received the radio frequency signals.
In some embodiments, the method further includes determining an estimated position of each of the one or more unknown positioned electronic labels with assumed maximum distance positions, by taking a mean sum or a weighted sum based on any desired generic metric to be used as a weight in the location calculation of the position of each of the one or more fixed anchor electronic labels that received the data packets.
In the description, for purposes of explanation and not limitation, specific details are set forth, such as particular embodiments, procedures, techniques, etc. to provide a thorough understanding of the present technology. However, it will be apparent to one skilled in the art that the present technology may be practiced in other embodiments that depart from these specific details.
The accompanying drawings, where like reference numerals refer to identical or functionally similar elements throughout the separate views, together with the detailed description below, are incorporated in and form part of the specification, and serve to further illustrate embodiments of concepts that include the claimed disclosure and explain various principles and advantages of those embodiments.
The methods and systems disclosed herein have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present disclosure so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
While the present technology is susceptible of embodiment in many different forms, there is shown in the drawings and will herein be described in detail several specific embodiments with the understanding that the present disclosure is to be considered as an exemplification of the principles of the present technology and is not intended to limit the technology to the embodiments illustrated.
Indoor three-dimensional localization is a problem and is currently limited to technologies that rely on infrastructure-heavy techniques, or rely on line of sight visibility, these technologies are unreliable, have low accuracy, can be costly and time consuming to set up. What is needed is a lightweight solution that can provide localization of assets in both indoor and outdoor settings that is quickly able to be set up and taken down and does not require large overhead costs. Traditionally, ranging, i.e., actual measurement of distance is used for indoor localization methods in three-dimensional space, through triangulation or other techniques. The technologies herein use a mesh-based localization architecture using electronic labels or nodes to undertake indoor localization. One proposed method is that of presence detection, where bidirectional transmission of radio frequencies is used to estimate the position between different electronic labels or nodes.
Several embodiments of the present disclosure relate to an electronic label, electronic sticker, or stamp that can be attached to any physical item for tracking, provisioning, quantification of item(s), or for measurement of any number of characteristics to assets it is attached to. In exemplary embodiments, the electronic sticker is capable of being attached to any physical item/asset via any attachment means, adhesive, mechanical, or otherwise. The electronic label may in various embodiments be set on a backing liner (liner).
In various exemplary embodiments, the electronic label is a specially designed and manufactured hardware computing chip with external components either attached or printed directly onto the chip. The external components may be any one or more of an attached or printed antenna (to enable wireless communications), a power source (such as a printed battery, or energy harvester), and a sensor. In many embodiments a circuit trace is included on the electronic label, and is connected to the rest of the circuit, preferably directly and immediately connected to the chip. The electronic label may also include capacitors, resistors, and inductors within the electronic circuit on or in the electronic label. The electronic sticker also has wireless firmware, to enable end to end encrypted communications over any wireless network.
Each electronic label may be utilized as a wireless node in a communications network of a plurality of wireless nodes. Furthermore, each electronic label can communicate with other neighboring wireless stickers using standard protocols and communication technologies like Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.15.4, WiFi, etc. The electronic labels can be composed in any configuration to form a full or partial mesh network. Further, each electronic label can connect to one or more centralized gateways, such as a WiFi access point, cell phone, tablet, laptop computer, desktop computer, cellular gateways, Low Power Wide Area Network (LPWAN) gateways, satellite gateways, or any other computing device. The electronic labels can also be utilized in a manner akin to edge devices in a wireless mesh network. In several embodiments, direct communication between the electronic labels and cellular towers, microwave towers, base stations and satellites is possible.
In various embodiments, the electronic label may be used as, or instead of a shipping label and is able to communicate with neighboring labels through a mesh network, created by the multitude of connected individual electronic labels. These electronic labels may communicate directly to each other through various technologies discussed in this document, as well communicate with other devices, servers, local and cloud networks, and databases through internet communications via a connection to one or more gateway devices or access points.
In several embodiments, each electronic label has its own unique digital identifier (unique ID), and in some embodiments, asset information may be added to the electronic label by printing information directly on the label, this information may include shipping data, other identifiers, and customer or merchant generated information. In some embodiments a printer or other printing device may be used to add the information to the label by printing the information, barcode, serial number, or other identifier on the label. In various embodiments once the data is printed onto a label, it is then read by a visual sensor and the unique digital identifier of the electronic label as well as the asset information are linked or associated together. The linking of the added information may additionally be done in the cloud, and in some embodiments, the linking or associating of the unique digital identifier of the electronic label with the asset information is undertaken without any physical printing on the label.
The computing chip on the label may be in a sleep mode, low-power mode, or may be partially or completely powered off or inactive depending on the preprogramming of the chip (these collectively referred to as “low power mode”). In some embodiments the chip may contain one low power core that is active, while the other cores are turned off or in a low power or sleep state.
In several embodiments, the chip may be activated based on geolocation information, this activation method may be carried out in a variety of ways. In various embodiments, the location of the label (which may or may not have been placed on an asset), is triangulated by one or more locators or gateways by detecting the transmissions or signals the label is sending; prior to activation these are usually infrequently sent radio frequency signals which are detected by these gateways which determine whether the label is to be activated, if the label is at a designated location or area, the gateways send a command to the label, via the sensor, the chip or otherwise, to activate the chip. In some embodiments, the location of the label can be computed by the label itself; this is done by the label receiving reference signals from one or more locators or gateways; the label then determines if it is at a designated activation location and if so activates. In preferred embodiments, triangulation of the label’s location may be carried out by one or more gateways, devices, fixed anchors, sensors, nodes, or towers which receive signals that may be periodic in nature, or radio frequency transmissions from the label, and/or from a sensor such as a GPS or geolocation sensor or other sensor, and in others from the chip itself. The sensor(s) discussed may be on or part of the chip, or separate and external and embedded on the label and connected to the chip, and in some embodiments a combination of both types of sensors may be used. In some embodiments the chip receives readings or instructions either from the sensor, a gateway, or a computing device to activate. In several embodiments, the electronic label is programmed to automatically be activated when it is near a specific device including a designated computing or mobile device or be activated by a variety of methods such as scanning a QR code, an infrared serial number and the like with a device that utilizes one or more visual sensors including cameras, infrared sensors, and the like.
Once the chip on the label is activated, then it may begin carrying out several things, in some embodiments it may begin to periodically send confirmation of activation, location data as well as other information to nearby devices, which may include gateway devices, other computing devices and the like to be transmitted to a cloud network or server.
Each electronic label can transmit either all the raw data to a gateway, or transmit only select pieces of information, such as location and/or time data. The specific data transmitted to the gateway and the time interval at which the data is transmitted to the gateway may be customizable. The frequency of transmission and the cost of transmission are important factors for bandwidth and power usage limitations. Alternatively, or additionally, data can be transmitted from an electronic sticker directly to a user computing device (such as a smartphone, table, smartwatch, laptop, etc.) or from a gateway to a user computing device. The gateway device may transmit this information to a cloud using backhaul communication either through wired or wireless infrastructure.
Sticker 102 may be of any size practical for attachment to an object. In an exemplary embodiment, the electronic sticker may be 2 cm x 2 cm.
Wireless SoC 110 may be of a size practical for inclusion on sticker 102. In exemplary embodiments, the chip is 1 square millimeters in size. In other embodiments, the wireless SoC can of other sizes, such as 6 square millimeters (3 mm x 2 mm), 4 square millimeters (2 mm x 2 mm), or any other size.
The unique digital identifier of each electronic label is linked to the shipping information, data, other asset or package information and data or other types of identifiers provided or generated by the merchant or customer. As shown in
In various embodiments, the data packet may contain the information indicating the range limit of the particular electronic label 510, in other embodiments the electronic label may have a certain range based on its generation or model number. In preferred embodiments the transmission range of an electronic label 510 is set and determined by a preset transmitter output power. Therefore, the presence detection technique can ascertain the range within an electronic label 510 is from a fixed anchor, if a fixed anchor 520 receives a data packet or other signal from the electronic label 510.
In various embodiments, presence detection is followed by data collection and processing across one or more of the electronic labels 510 and fixed anchors 520. In various embodiments data is collected from all these electronic labels 510 and fixed anchors 520. Then an algorithm is deployed to make estimates of where each electronic label 510 is located relative to each fixed anchor 520 to obtain an estimated position for each electronic label 510. This information is then used to determine in which slot, which shelf or what area of a warehouse the electronic label is set. Several parameters may be used to determine or refine the estimated position of which slot in the warehouse is occupied by which label, these include a strength of transmission parameter as well as parameters base on other data that is collected from the electronic labels 510.
After presence detection is undertaken to determine an estimated location of an electronic label 510 and its range within fixed anchors 520 that detect it the position of an electronic label 510 is determined by taking a weighted sum of each of the fixed anchors 520 that detect it. Therefore, the more fixed anchors 520 that detect an electronic label 510 or can receive signals from it, the more accurate the estimate position will be of that electronic label 510. The positioning estimate will be based on the weighted sum of the positions of the fixed anchors 520, since the positions in three-dimensional space of each fixed anchor is known and fixed. This in turn provides x,y or or x,y,z coordinates of the electronic label 510.
In several embodiments, each of the electronic labels 710 are able to undertake radio roundtrip measurements (RTT), i.e., ranging measurements of actual distance over the wireless mesh network. Each of the electronic labels 710 can carry out RTT with any other electronic label 710 its signal may reach or transmit to. In preferred embodiments each node can undertake RTT along with its nearest electronic label 710 neighbors. RTT may be undertaken in any of the architectures and embodiments presented herein including those of
Furthermore, fixed anchors may be utilized as calibration points in any of the embodiments presented in these
Initially, when the wireless mesh network is formed, all the electronic labels 1110 or devices are time synchronized and are following the same communication schedule. This communication schedule is maintained by the mesh wireless network controller DAGROOT 1120. If DAGROOT 1120 is offline, for whatever reason including wireless failure or link failure. We want all the nodes to de-synchronize quickly and lose all synchronization information. Otherwise in many instances nodes will keep trying to synchronize to each other, creating fluctuations increasing the time for electronic labels 1110 to desynchronize.
In the embodiment presented herein the de-synchronization method places a “sync-ness” value on each electronic label 1110 as well as DAGROOT 1120. DAGROOT 1120 has the highest sync-ness assigned value relative to the other nodes, in some instances it may have the maximum possible value. Each node or electronic label 1110 connected directly or indirectly through mesh to DAGROOT 1120 then has a sync-ness value that is lower than that of DAGROOT 1120. Each electronic label 1110 in turn then has a sync-ness value assigned to it that is lower than that of an electronic label 1110 it is connected to that is connected closer to DAGROOT 1120. As the number of connections increase, each electronic label 1110 further removed from DAGROOT 1120 has an increasingly lower sync-ness value.
As long as there are radio frequency packets or data packets (herein referred to as a “synchronization packet”) being received by the electronic labels 1110 and received periodically, then the sync-ness value is maintained. But as soon as DAGROOT 1120 is disconnected, powered off or taken offline, then the nodes stop receiving these data packets. A timeout parameter is preset, such that for whenever a data packet is not received within a certain period then sync-ness value keeps decreasing by a certain value to the point that it reaches 0, every node/electronic label 1110 also does that, since they also do not receive packets from the other nodes/electronic label 1110.
Once DAGROOT 1120 is disconnected, powered off, or removed from the network it can be determined and/or controlled how long it would take for the whole network to disassemble or de-synchronize based on the timeout parameters and the sync-ness values, and the rate of decreasing the sync-ness values of each node/electronic label 1110.
In
The example computer system 1 includes a processor or multiple processor(s) 5 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), and a main memory 10 and static memory 15, which communicate with each other via a bus 20. The computer system 1 may further include a video display 35 (e.g., a liquid crystal display (LCD)). The computer system 1 may also include an alpha-numeric input device(s) 30 (e.g., a keyboard), a cursor control device (e.g., a mouse), a voice recognition or biometric verification unit (not shown), a drive unit 37 (also referred to as disk drive unit), a signal generation device 40 (e.g., a speaker), and a network interface device 45. The computer system 1 may further include a data encryption module (not shown) to encrypt data.
The components provided in the computer system 1 are those typically found in computer systems that may be suitable for use with embodiments of the present disclosure and are intended to represent a broad category of such computer components that are known in the art. Thus, the computer system 1 can be a server, minicomputer, mainframe computer, or any other computer system. The computer may also include different bus configurations, networked platforms, multi-processor platforms, and the like. Various operating systems may be used including UNIX, LINUX, WINDOWS, QNX ANDROID, IOS, CHROME, TIZEN, and other suitable operating systems.
The disk drive unit 37 includes a computer or machine-readable medium 50 on which is stored one or more sets of instructions and data structures (e.g., instructions 55) embodying or utilizing any one or more of the methodologies or functions described herein. The instructions 55 may also reside, completely or at least partially, within the main memory 10 and/or within the processor(s) 5 during execution thereof by the computer system 1. The main memory 10 and the processor(s) 5 may also constitute machine-readable media.
The instructions 55 may further be transmitted or received over a network 70 via the network interface device 45 utilizing any one of several well-known transfer protocols (e.g., Hyper Text Transfer Protocol (HTTP)). While the machine-readable medium 50 is shown in an example embodiment to be a single medium, the term “computer-readable medium” should be taken to include a single medium or multiple medium (e.g., a centralized or distributed database and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable medium” shall also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the machine and that causes the machine to perform any one or more of the methodologies of the present application, or that is capable of storing, encoding, or carrying data structures utilized by or associated with such a set of instructions. The term “computer-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals. Such media may also include, without limitation, hard disks, floppy disks, flash memory cards, digital video disks, random access memory (RAM), read only memory (ROM), and the like. The example embodiments described herein may be implemented in an operating environment comprising software installed on a computer, in hardware, or in a combination of software and hardware.
One skilled in the art will recognize that Internet service may be configured to provide Internet access to one or more computing devices that are coupled to the Internet service, and that the computing devices may include one or more processors, buses, memory devices, display devices, input/output devices, and the like. Furthermore, those skilled in the art may appreciate that the Internet service may be coupled to one or more databases, repositories, servers, and the like, which may be utilized to implement any of the embodiments of the disclosure as described herein.
The computer program instructions may also be loaded onto a computer, a server, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
Suitable networks may include or interface with any one or more of, for instance, a local intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a MAN (Metropolitan Area Network), a virtual private network (VPN), a storage area network (SAN), a frame relay connection, an Advanced Intelligent Network (AIN) connection, a synchronous optical network (SONET) connection, a digital T1, T3, E1 or E3 line, Digital Data Service (DDS) connection, DSL (Digital Subscriber Line) connection, an Ethernet connection, an ISDN (Integrated Services Digital Network) line, a dial-up port such as a V.90, V.34 or V.34bis analog modem connection, a cable modem, an ATM (Asynchronous Transfer Mode) connection, or an FDDI (Fiber Distributed Data Interface) or CDDI (Copper Distributed Data Interface) connection. Furthermore, communications may also include links to any of a variety of wireless networks, including WAP (Wireless Application Protocol), GPRS (General Packet Radio Service), GSM (Global System for Mobile Communication), CDMA (Code Division Multiple Access) or TDMA (Time Division Multiple Access), cellular phone networks, GPS (Global Positioning System), CDPD (cellular digital packet data), RIM (Research in Motion, Limited) duplex paging network, Bluetooth radio, or an IEEE 802.11-based radio frequency network. The network 215 can further include or interface with any one or more of an RS-232 serial connection, an IEEE-1394 (Firewire) connection, a Fiber Channel connection, an IrDA (infrared) port, a SCSI (Small Computer Systems Interface) connection, a USB (Universal Serial Bus) connection or other wired or wireless, digital or analog interface or connection, mesh or Digi® networking.
In general, a cloud-based computing environment is a resource that typically combines the computational power of a large grouping of processors (such as within web servers) and/or that combines the storage capacity of a large grouping of computer memories or storage devices. Systems that provide cloud-based resources may be utilized exclusively by their owners or such systems may be accessible to outside users who deploy applications within the computing infrastructure to obtain the benefit of large computational or storage resources.
The cloud is formed, for example, by a network of web servers that comprise a plurality of computing devices, such as the computer device 1, with each server (or at least a plurality thereof) providing processor and/or storage resources. These servers manage workloads provided by multiple users (e.g., cloud resource customers or other users). Typically, each user places workload demands upon the cloud that vary in real-time, sometimes dramatically. The nature and extent of these variations typically depends on the type of business associated with the user.
It is noteworthy that any hardware platform suitable for performing the processing described herein is suitable for use with the technology. The terms “computer-readable storage medium” and “computer-readable storage media” as used herein refer to any medium or media that participate in providing instructions to a CPU for execution. Such media can take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as a fixed disk. Volatile media include dynamic memory, such as system RAM. Transmission media include coaxial cables, copper wire and fiber optics, among others, including the wires that comprise one embodiment of a bus. Transmission media can also take the form of acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM disk, digital video disk (DVD), any other optical medium, any other physical medium with patterns of marks or holes, a RAM, a PROM, an EPROM, an EEPROM, a FLASHEPROM, any other memory chip or data exchange adapter, a carrier wave, or any other medium from which a computer can read.
Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to a CPU for execution. A bus carries the data to system RAM, from which a CPU retrieves and executes the instructions. The instructions received by system RAM can optionally be stored on a fixed disk either before or after execution by a CPU.
Computer program code for carrying out operations for aspects of the present technology may be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, Smalltalk, C++, or the like and conventional procedural programming languages, such as the “C” programming language, Go, Python, or other programming languages, including assembly languages. The program code may execute entirely on the user’s computer, partly on the user’s computer, as a stand-alone software package, partly on the user’s computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user’s computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
The foregoing detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show illustrations in accordance with exemplary embodiments. These example embodiments, which are also referred to herein as “examples,” are described in enough detail to enable those skilled in the art to practice the present subject matter.
The embodiments can be combined, other embodiments can be utilized, or structural, logical, and electrical changes can be made without departing from the scope of what is claimed. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope is defined by the appended claims and their equivalents. In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one. In this document, the term “or” is used to refer to a nonexclusive “or,” such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. Furthermore, all publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated reference(s) should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present technology has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. Exemplary embodiments were chosen and described to best explain the principles of the present technology and its practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
While specific embodiments of, and examples for, the system are described above for illustrative purposes, various equivalent modifications are possible within the scope of the system, as those skilled in the relevant art will recognize. For example, while processes or steps are presented in a given order, alternative embodiments may perform routines having steps in a different order, and some processes or steps may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative or sub-combinations. Each of these processes or steps may be implemented in a variety of different ways. Also, while processes or steps are at times shown as being performed in series, these processes or steps may instead be performed in parallel or may be performed at different times.
The various embodiments described above, are presented as examples only, and not as a limitation. The descriptions are not intended to limit the scope of the present technology to the forms set forth herein. To the contrary, the present descriptions are intended to cover such alternatives, modifications, and equivalents as may be included within the spirit and scope of the present technology as appreciated by one of ordinary skill in the art. Thus, the breadth and scope of a preferred embodiment should not be limited by any of the above-described exemplary embodiments.
The present application claims the priority benefit of U.S. Provisional Pat. Application Serial No. 63/319,011 filed on Mar. 11, 2022 and titled “Electronic Label Localization and Mesh Network Desynchronization,” all of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63319011 | Mar 2022 | US |