Spectral detection of optical tags utilizes optically coded tags including distinctive optical codes. Codes are implemented using a material that produces a set of reflective optical peaks. For example, the reflectivity of the material is encoded using a stack or using a smoothly varying change in optical index created by controlled etching of silicon wafers, (e.g., a rugate optical filter). Tags with distinct codes can be used to distinguish distinct products. The number of possible tag codes is limited, limiting the amount of information that it is possible to embed using the tags. For applications such as counterfeit detection or distinguishing distinct product stock keeping units, the limited number of codes is acceptable. However, a problem is created when individual products are to be distinguished, for instance when tags are desired to be used as serial numbers.
Various embodiments of the invention are disclosed in the following detailed description and the accompanying drawings.
The invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. Unless stated otherwise, a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. As used herein, the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
A system for depositing tags in an array is disclosed. The system comprises a substrate holder configured to hold a substrate, a tag depositor configured to deposit tags on the substrate, and a positioner configured to position the tag depositor relative to the substrate, wherein the positioner positions the tag depositor to deposit tags on the substrate in an array.
A system for depositing tags in an array comprises a substrate holder, a tag depositor, and a positioner. The substrate holder is configured to hold a substrate. For example, the substrate holder comprises a clamping substrate holder, a vacuum substrate holder, a belt substrate holder, etc. The tag depositor is configured to deposit tags on the substrate. In some embodiments, the tag depositor comprises one of a plurality of tag depositors. The positioner is configured to position the tag depositor relative to the substrate, wherein the positioner positions the tag depositor to deposit tags on the substrate in an array. The tag depositor moves relative to the substrate (e.g., in an array pattern) to deposit tags in an array. In various embodiments, the tag depositor is still and the substrate moves, the substrate is still and the tag depositor moves, or both the tag depositor and the substrate move to achieve appropriate positioning of the tags and the substrate. The tag depositor is coupled to a tag reservoir (e.g., the enclosure holding a set of tags) for providing tags. In some embodiments, the tag reservoir comprises one of a plurality of tag reservoirs, wherein a coupling to the tag depositor is switchable between the plurality of tag reservoirs. For example, the tag reservoirs of the plurality of tag reservoirs are associated with tags with distinct codes, allowing the tag depositor to deposit tags with distinct codes across the array. Alternatively, the tag depositors of the plurality of tag depositors are associated with tags with distinct codes, allowing the plurality of tag depositors to deposit tags with distinct codes across the array. A set of distinct tags deposited in an array can be read using a spatially localized spectral imaging system. The set of tag codes is interpreted as a single code word, with a large array of code words possible.
In some embodiments, the tag depositor comprises a system for sparse distribution of tags. The system for sparse dispersion of tags comprises an enclosure configured to contain a set of tags, wherein the set of tags settles to the bottom of the enclosure in a heap, an input tube configured to inject gas near the bottom of the enclosure, and an exit tube configured such that the distance to the set of tags in the heap generates a sparse flow of tags from the set of tags that exits the exit tube when a gas is injected via the input tube. The number of tags in the set of tags is limited to allow room between the top of the heap and the top of the enclosure. A gas (e.g., air) fills the enclosure between the top of the heap and the top of the enclosure. The system comprises an inlet tube entering the enclosure. The end of the inlet tube is near the bottom of the heap of tags. When a gas (e.g., air) is injected via the input tube, tags are pushed out of the heap and mix with the gas above the top of the heap. The number of tags in the heap, amount of room above the heap, and gas injection flow are chosen such that the tags are sparsely distributed within the gas above the top of the heap. The system additionally comprises an output tube for allowing the mixture of gas and tags to exit the enclosure. The exit tube is configured such that a distance to the set of tags in the heap generates a sparse flow of tags from the set of tags that exits the exit tube when a gas is injected via the input tube.
In some embodiments, the system for depositing tags in an array comprises a plurality of tag sources. The individual tag sources are each associated with a different tag code (e.g., the tags provided by a single tag source comprise the same tag code, and different tag sources are associated with different tag codes). The coupling for coupling the plurality of tag sources to tube 104 comprises a switchable coupling for selecting a single tag source of the plurality of tag sources. The ability to select and deposit a tag code from a plurality of tag codes allows the system for depositing tags in an array to deposit tags of different codes at different locations in the array. A system for depositing tags in an array comprising a plurality of tag sources can additionally comprise a system for purging (e.g., clearing tags out of the tag depositor) prior to switching tag sources. For example, a system for purging comprises a vent for allowing gas mixed with tags to exit the tag depositor and a purge gas connection for allowing gas with no tags to enter the tag depositor.
In some embodiments, the system for depositing tags in an array comprises a plurality of tag depositors. The tag depositors of the plurality of tag depositors are coupled to one or more different tag sources, and each different tag source is associated with a different tag code. The plurality of tag depositors associated with one or more different tag sources allows the system for depositing tags in an array to deposit tags of different codes at different locations in the array. In some embodiments, a plurality of tag depositors is associated with a single code. In some embodiments, a plurality of tag depositors is arranged in an array with a fixed position relative to one another. In some embodiments, a plurality of tag depositors is arranged in a linear array.
Tags (e.g., tag 108, tag 114) comprise coded tags. In some embodiments, tags comprise optical interference filters (e.g., rugate filters or etched porous silicon filters). In some embodiments, tags comprise particles of less than 100 micrometers with embedded optically readable codes.
In various embodiments, a tag depositor deposits tags in a fluid or gel carrier, or any other appropriate carrier for tags. In the case in which the tag depositor utilizes a fluid or gel carrier, the depositor may not have shroud 106.
The tags of a single code are placed into reservoirs with individually activated dispensing nozzles. The tags may be dry and rely on previously-applied adhesives to adhere to the object, such as in a laminate label structure; or rely on another method of adherence inherent in the object, such as static electricity or some pre-existing ‘sticky’ condition that offers sufficient bonding strength, the strength of which is dependent on the nature of the field-use requirements for the tagged object. In some cases, dry tags are applied using a low-density airborne delivery mechanism that is able to deliver the low-density tags to a spatially confined area. For example, the low-density delivery mechanism spatially confines the delivery by a double-walled confinement nozzle (e.g., as in shown in
In some cases, it may be desirable to not apply a fiducial mark. One example might be when marking a small item (e.g., an IC) that is smaller than the reader field-of-view. It may also be difficult or undesirable for a customer to add any extraneous marks to the item or label. Eliminating the fiducial mark however may reduce the number of possible code matrices available. For a rectangular having 2-fold symmetry or square code matrix having 4 possible orientations, the lack of a fiducial could reduce the number of unique code matrices available by the same factor of 4. Alternately if a 5-way rotational symmetry was used, a blank slice could act as an angular fiducial and the order of codes could start clockwise (or counterclockwise) from the blank slice.
The reader may either be a whiskbroom, pushbroom or snapshot hyperspectral or multispectral imager. The reader images the tagged region and collects spatial and spectral information on the microparticles. It may also collect information from fiducials, e.g., lines delineating the array members' boundary locations.
A consensus code is deciphered per array element and a “word” is retrieved comprising of codes and their location in the array. In some embodiments, a similar scheme can operate where instead of codes comprised of rugate peaks—for example, codes made of different Fabry Perot fringes (different effective thicknesses of the tags) are used.
A similar scheme can operate where instead of rugate peaks distributed across slots, “colored” rugate reflections are created by concentrating reflections in one relatively wide spectral band, thereby making the tags readable by a standard RGB (or multispectral) camera (e.g., a cellphone camera). The camera then captures an image of the tagged array and via an app recovers the encoded “word”. The app may contact a remote database—for example, in the cloud, and retrieve relevant information, such as the identity or provenance of the object referenced by the “word”.
To reduce tag readout errors, the design of the reservoir application system should minimize or prevent mixing or overlap of different tag-code populations between one code matrix location and another. This can be achieved for example by spraying very closely to the target or by applying a spatially-separated droplet of tag-bearing adhesive liquid.
Code matrix cell boundaries may be (i) printed on the substrate (e.g., circles or squares); (ii) be given as distances from a printed or otherwise patterned feature or fiduciary on the substrate; or ii) be decided by the tag-reader decoder by performing a cloud analysis of the tags and their positions—for example by fitting a Gaussian density distribution to the various clouds of encoded tags. In that case, tag population overlap may be tolerable to some extent. Stray tags will be ignored (up to a certain density) if they do not appear to be part of the a priori known density distributions.
The reservoir dispensers of code 1 are activated at the required locations (in this example, at locations 1-1 and 1-3 in step 1 of
In some embodiments, all reservoir rows are located at a single application station where objects undergoing serialization are placed and the code matrix is completely applied before the object is moved.
In some embodiments, the reservoir rows are located at different application stations along the path of applying code matrices to serialized objects (e.g., a conveyor belt). Each single station applies a single code and the full code matrix is formed after multiple object stops at multiple locations. This arrangement allows for parallel application of tags to multiple objects.
In some embodiments, single reservoirs of each tag code are arranged on a selector—for example, a circular stage “revolver” type. The tag selector in turn is attached to an XY stage. All together these represent a code matrix application station. When an object is placed under the code matrix application station, the first required code reservoir is placed in the active position, the nozzle activated and is raster-scanned across the code matrix. The next code is selected and the process is repeated until the full matrix is complete.
In some embodiments, the dispensing nozzles are connected to the outputs of multichannel selector valves. The number of selector valves is equal to the total number of positions in the code matrix and each selector valve corresponds to a particular location in the code matrix. The number of input channels to each selector valve is equal to the total number of tag codes used to create the code matrix. The number of input channels to each selector valve is equal to the total number of tag codes used to create the code matrix. Input channels are connected to the corresponding pressurized reservoirs containing tags suspended in the carrier liquid. Alternatively, input channels can be connected to non-pressurized reservoirs via a transfer pump. During imprinting of the code matrix, each nozzle is connected to the desired tag code reservoir via the selector valve and all code matrix locations are deposited simultaneously. In one configuration the code selection can be done electronically. In another configuration code selection can be done manually.
Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive.
This application claims priority to U.S. Provisional Patent Application No. 62/508,303 entitled MULTIPLE CODES IN AN ARRAY PATTERN filed May 18, 2017 which is incorporated herein by reference for all purposes. This application also claims priority to U.S. Provisional Patent Application No. 62/508,304 entitled SPARSE DISPERSION OF MICROPARTICLES filed May 18, 2017 which is incorporated herein by reference for all purposes.
| Number | Date | Country | |
|---|---|---|---|
| 62508303 | May 2017 | US | |
| 62508304 | May 2017 | US |