一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

带有动态环境数据系统、方法和装置的二维条形码与流程

2022-02-19 06:39:50 来源:中国专利 TAG:

带有动态环境数据系统、方法和装置的二维条形码
1.本技术是申请日为2016年03月30日、题为“带有动态环境数据系统、方法和装置的二维条形码”的中国发明专利申请no.201680020180.7(pct国际申请no.pct/us2016/024884)的分案申请。
技术领域
2.本公开一般地涉及二维条形码内的编码的信息。例如,本公开涉及用于将预印的信息与二维条形码内的动态编码的传感器信息组合在一起的方法、系统和装置。


背景技术:

3.条形码是对数据的光学机器可读的表示。二维(2d)条形码(例如,qr码的数据矩阵)是在条形码中表示信息的二维方式。2d条形码可以在每单位面积内比一维条形码表示更多数据。条形码有多个用途,包括记录存货、跟踪递送、将产品与定价文件进行匹配、以及向用户提供信息。对于某些系统,从条形码进行数据恢复可能是系统级至关重要的。许多条形码技术提供了强大的误差校正功能,并且通常情况下,使用重复的条形码或更大尺寸的条形码可以增强数据恢复能力。然而,可用于条形码的空间在许多方面可能受到限制。而且,当前的条形码技术可以如现在所公开的那样得以改进。


技术实现要素:

4.本公开提供了用于提供和读取包括动态环境的数据的2d条形码的新颖且具创造性的系统、方法和装置,其中该条形码的模块可以响应于环境的条件而改变状态。在本公开的示例性方面中,一种传感器增强的二维条形码,包括:基板;设置在基板上的二维误差校正条形码符号;设置在基板上的呈永久色状态的第一层;以及设置在基板上的第二层。该条形码符号还包括多个模块,这些模块可选地是正方形、矩形、或圆形的,每个模块具有第一颜色状态或第二颜色状态之一。第二层可选地是通过以传感器染料模块图案套印第一层来设置的,该传感器染料模块图案包含传感器数字信息。该第二层还包括具有如下化学物质的传感器染料,该化学物质被配置为响应于环境的、物理的或生物的条件的出现而经历化学的或物理的状态改变以使得传感器染料的颜色状态发生改变,从而改变多个模块的子集的颜色状态。
5.根据本公开的另一示例性方面,制品包括药品、生物制品、或食品,优选地为疫苗;容纳药品、生物制品、或食品的容器,优选地为疫苗小瓶;以及设置在容器上或容器中的传感器增强的二维条形码符号优选地被应用于容器的外表面。
6.根据本公开的另一示例性方面,一种读取传感器增强的二维条形码符号的方法,包括:扫描并光学地处理传感器增强的二维条形码符号的图像,其包括从扫描的传感器增强的二维条形码符号的模块构建扫描二进制位图。该方法还包括从扫描二进制位图构建符号码字序列。然后,优选地通过对符号码字序列使用误差校正处理来从符号码字序列中恢复底层数据码字,误差校正处理优选地是里德

所罗门码。接下来,处理底层数据码字以形
成底层符号码字序列。该方法还包括从底层符号码字序列、从扫描二进制位图构建底层二进制位图,该底层二进制位图优选地在大小上等于扫描二进制位图。可以在每个位位置处对扫描二进制位图和底层二进制位图执行异或运算以形成传感器数字信息位图。可选地,该方法包括:处理传感器数字信息位图以恢复包含二进制编码的传感器数据的二进制信息序列,优选地通过将二进制信息序列作为误差校正码序列进行处理,并利用误差校正处理来恢复二进制编码的传感器数据。该误差校正码优选地选自由以下各项构成的组:汉明(hamming)码、博斯

查德胡里

霍昆格母(bose

chaudhuri

hocquenghem,bch)码、格雷(golay)码、单码、雷德

密勒(reed

muller)码、法尔(fire)码、卷积码、以及雷德

所罗门(reed

solomon)码。
7.根据本公开的另一示例性方面,一种生成2d条形码的方法,包括:确定包括一组静态数据和一组动态数据的一组有效载荷数据,生成包括该组静态数据的编码的版本并且包括冗余空间的2d条形码,将该冗余空间的至少一部分指定为适于存储该组动态数据的动态区域,以及使用静态墨水印刷该2d条形码并且使用动态墨水在该动态区域上印刷该组动态数据的编码的版本,该动态墨水响应于至少一个环境的改变而改变状态,以使得该组动态数据处于多个状态之一。该组动态数据可由2d条形码的读取器读取,并且当该组动态数据处于多个状态中的每一状态时,该组静态数据都可由2d条形码的读取器读取。
8.根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种提供2d条形码的方法,包括:确定一组静态数据,确定一组动态数据,生成第一2d条形码,生成第二2d条形码,比较第一2d条形码和第二2d条形码,并将信息模块分类为第一组和第二组,并且以静态墨水和动态墨水来印刷该2d条形码。该组动态数据具有第一状态和第二状态。第一2d条形码包括该组静态数据和处于第一状态的该组动态数据的编码的版本。该组静态数据和处于第一状态的该组动态数据包括第一多个信息模块和第二多个信息模块。第二2d条形码包括该组静态数据和处于第二状态的该组动态数据的编码的版本。该组静态数据和处于第二状态的该组动态数据包括第三多个信息模块和第四多个信息模块。第三多个信息模块包括所有第一多个信息模块加上一个或多个信息模块的集合。第二多个信息模块包括所有第四多个信息模块加上一个或多个信息模块的集合。第一组包括介于第一2d条形码的第一多个信息模块和第二2d条形码的第三多个信息模块之间的公共信息模块。第二组包括第二2d条形码的第三多个信息模块的特有信息模块。第一组被以静态墨水印刷,并且第二组被以动态墨水印刷。动态墨水被适配为响应于特定环境的因素的出现而激活。
9.根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种提供2d条形码的方法,包括:确定一组静态数据,确定一组动态数据,生成第一2d条形码,生成第二2d条形码,比较第一2d条形码和第二2d条形码,并且将信息模块分类位第一组、第二组和第三组,以及使用使用静态墨水、第一动态墨水、和第二动态墨水来印刷该2d条形码。该组动态数据具有第一状态和第二状态。第一2d条形码包括该组静态数据和处于第一状态的该组动态数据的编码的版本。该组静态数据和处于第一状态的该组动态数据包括第一多个信息模块和第二多个信息模块。第二2d条形码包括该组静态数据和处于第二状态的该组动态数据的编码的版本。该组静态数据和处于第二状态的该组动态数据包括第三多个信息模块和第四多个信息模块。第一组包括介于第一2d条形码的第
一多个信息模块和第二2d条形码的第三多个信息模块之间的公共信息模块。第二组包括第二2d条形码的第三多个信息模块的特有信息模块,并且第三组包括第一2d条形码的第一多个信息模块的特有信息模块。第一组被以静态墨水印刷,第二组被以第一动态墨水印刷,并且第三组被以第二动态墨水印刷。第一动态墨水被适配为响应于特定环境的因素的出现而失效,并且第二动态墨水被适配为响应于特定环境的因素的出现而激活。
10.根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种提供2d条形码的方法,包括:确定包括一组静态数据和一组动态数据的一组有效载荷数据,该组动态数据具有第一状态和第二状态,生成包括该组静态数据的编码的版本、适于存储该组动态数据的动态区域、和误差检测和校正数据的2d条形码,以及使用静态墨水印刷该2d条形码并且使用动态墨水在该动态区域上印刷编码的该组动态数据,该动态墨水响应于至少一个环境的改变而改变状态,以使得该组动态数据处于第一状态或第二状态,并且误差检测和校正数据适应动态区域中的该组动态数据的改变,以使得当该组动态数据处于第一状态时该2d条形码可由读取器读取并产生第一输出,并且当该组动态数据处于第二状态时该2d条形码可由读取器读取并产生第二输出。
11.根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种读取2d条形码的方法,包括:扫描2d条形码中所包括的一组静态数据,扫描该2d条形码中所包括的一组动态数据,生成该组静态数据的第一输出,以及生成该组动态数据的第二输出。该2d条形码被以静态墨水和动态墨水印刷,该组静态数据的编码的版本被以静态墨水印刷。该组动态数据的编码的版本被以动态墨水印刷,该动态墨水响应于至少一个环境的改变而改变状态,以使得动态数据处于多个状态之一。该组动态数据被印刷在二维条形码的冗余空间中。第二输出指示动态数据处于多个状态中的哪个状态。
12.根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种读取二维(2d)条形码的方法,该方法包括:扫描2d条形码中所包括的一组静态数据,扫描2d条形码中所包括的一组动态数据,以及基于该组静态数据和该组动态数据生成输出。该2d条形码包括静态墨水和动态墨水。该组静态数据的编码的版本被以静态墨水印刷。该组动态数据的编码的版本被以动态墨水印刷,该动态墨水响应于至少一个环境的改变而改变状态,以使得动态数据处于多个状态之一。该组动态数据被印刷在动态区域中。当该组动态数据处于多个状态中的第一状态时,该输出是第一输出,并且当该组动态数据处于多个状态的第二状态时,该输出是第二输出。
13.在下面的具体实施方式和附图中描述了并且将从中明显地看出所公开的系统、方法和装置的附加的特征和优点。
附图说明
14.图1a是根据本公开的示例实施例的2d条形码的条形码数据的示例数据结构的框图。
15.图1b是根据本公开的示例实施例的2d条形码的编码的数据的示例数据结构的框图。
16.图1c是根据本公开的示例实施例的2d条形码的内容数据的示例数据结构的框图。
17.图1d是根据本公开的示例实施例的2d条形码的参考数据的示例数据结构的框图。
18.图1e是根据本公开的示例实施例的2d条形码的有效载荷数据的示例数据结构的框图。
19.图2a是根据本公开的示例实施例的示例2d条形码。
20.图2b是根据本公开的示例实施例的2d条形码的参考数据的示例。
21.图2c是根据本公开的示例实施例的示例2d条形码。
22.图2d是根据本公开的示例实施例的2d条形码的参考数据的示例。
23.图3a是根据本公开的示例实施例的2d条形码的表示。
24.图3b是根据本公开的示例实施例的2d条形码的表示。
25.图3c是根据本公开的示例实施例的2d条形码的表示。
26.图3d是根据本公开的示例实施例的2d条形码的表示。
27.图4包括示出了根据本公开的示例实施例的用于提供2d条形码的示例处理的流程图。
28.图5是示出了根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的2d条形码的流程图。
29.图6a是根据本公开的示例实施例的一组静态数据和一组动态数据的文本表示。
30.图6b是根据本公开的示例实施例的被编码为二进制信息模块的文本动态数据的示例。
31.图6c是示出了根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的2d条形码的流程图。
32.图6d是示出了根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的2d条形码的流程图。
33.图7包括示出了根据本公开的示例实施例的用于提供2d条形码的示例处理的流程图。
34.图8是示出了根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的2d条形码的一部分的流程图。
35.图9包括示出了根据本公开的示例实施例的用于提供2d条形码的示例处理的流程图。
36.图10a是根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的示例信息模块集的框图。
37.图10b是根据本公开的示例实施例的使用用于提供2d条形码的示例处理印刷的示例信息模块集的框图。
38.图10c是根据本公开的示例实施例的使用用于提供2d条形码的示例处理来印刷的示例信息模块集的框图。
39.图11包括示出了根据本公开的示例实施例的用于提供2d条形码的示例处理的流程图。
40.图12包括示出了根据本公开的示例实施例的用于读取2d条形码的示例处理的流程图。
41.图13包括示出了根据本公开的示例实施例的用于读取2d条形码的示例处理的流程图。
42.图14是根据本公开的示例实施例的2d条形码提供系统的框图。
43.图15a是根据本公开的示例实施例的2d条形码读取系统的框图
44.图15b是根据本公开的示例实施例的2d条形码读取系统的框图。
45.图16是根据本公开的示例实施例的编码的数据“1234567890”的14
×
14数据矩阵符号的框图。
46.图17是根据本公开的示例实施例的14
×
14数据矩阵符号的码字和犹他(utah)布置和位图矩阵的图示。
47.图18是根据本公开的示例实施例的10
×
10数据矩阵位图内的一般码字布置的示意图。
48.图19是根据本公开的示例实施例的在所有实际大小的数据矩阵符号中的不变犹他布置的框图。
49.图20是根据本公开的示例实施例的在16
×
16数据矩阵符号内的14
×
14位图和犹他布置的表示。
50.图21是根据本公开的示例实施例的15bch(15,5,7)的布置和gs1ai(90)串中所使用的犹他的表示和编码位的放置。
51.图22是根据本公开的示例实施例的使用w

x传感器染料化学和编码gs1 ai(90)串的16
×
16数据矩阵的框图。
52.图23是根据本公开的示例实施例的图7中的犹他1

7的细节。
53.图24是根据本公开的示例实施例的具有未激活的、套印的传感器染色模块的图7的16
×
16数据矩阵的框图。
54.图25是根据本公开的示例实施例的使用x

b传感器染料化学并且编码gs1 ai(90)串的16
×
16数据矩阵的框图。
55.图26是根据本公开的示例实施例的图25中的犹他州1

7的细节。
56.图27是根据本公开的示例实施例的具有未激活的、套印的传感器染色模块的图25的16
×
16数据矩阵的框图。
57.图28是根据本公开的示例实施例的编码表8的数据的16
×
16数据矩阵的细节,其中示出了4
×
4框区域。
58.图29是根据本公开的示例实施例的使用表8中的数据编码的底层16
×
16数据矩阵的框图。
59.图30是根据本公开的示例实施例的具有套印的4
×
4白色框的图29的16
×
16数据矩阵的框图。
60.图31是根据本公开的示例实施例的图30的16
×
16数据矩阵的框图,其中示出了套印和激活的传感器染色贴片。
具体实施方式
61.先前的方法一直是使用一维(线性或1d)条形码,它们或者变得不可读或者随刺激而变化。值得注意的是由varcode公司提供的freshcode智能条形码标签(参见:http://www.varcode.com/portfolio_item/freshcod/)。
62.已经有包括nemet等的us20140252096a1在内的许多1d条形码专利申请。虽然已经
一般地描述了将环境测量结合到1d条形码的数值中,但是适用于1d条形码的技术似乎并不适用于带有环境监测的二维(2d)条形码。
63.1d条形码所占用的面积限制了其在空间至关重要的应用(例如,用途应用的单元、小瓶等)中的实用性。具有高密度编码技术的二维条形码(例如,数据矩阵(data matrix))在实践中可以具有比代表相同数据的1d条形码大约小30倍或更小的编码区域。
64.涉及2d条形码的先前应用没有处理环境监测,而是专注于所存储的信息的高密度,该信息是静态的,并且对诸如温度、时间、时间

温度结果(time

temperature product)、冷冻、辐射、有毒化学物质之类的环境的因素不敏感。
65.一些解决方案已经涉及到具有两组数据,即主要的/次要的或隐蔽的/明显的数据,其中第二组信息被存储在条形码的冗余空间中,并且可以使用常规读取器或独立地使用第二读取器或其它解密方法来读取。虽然这些包括次要的/隐蔽的数据的解决方案已经解决了诸如安全性和可靠性之类的问题,但是任何一个都没有对其中数据是动态的环境监测进行处理。porter等人的待决(pending)美国专利申请us 20130015236 a1(high

value document authentication system andmethod(高价值文档认证系统及方法))以及其中所包含的参考文献描述了主要和次要信息集以及在文档认证中的应用。
66.其它解决方案已经处理了多组数据(主要/次要/再次等等)的问题,借此不同的数据集(次要、再次等)渐进地存储在先前的集合上。例如,通过使用不同的颜色模块在先前的集合上进行印刷,然后使用被配置为解译各种颜色模块的读取器解密数据来递增地添加多个信息集。参见例如simske等人的us20140339312 a1。这些解决方案一次一层地逐步引入静态数据,并解决与跟踪、追踪、检查、质量保证有关的问题,而不是动态的环境数据。
67.本公开中所描述的一些示例实施例提供了一种独特的方式来将预印刷的数据与编码的传感器信息组合在介质上的二维条形码中。预印刷数据和编码传感器信息可以在单一步骤中被组合,或者编码的传感器信息可以根据实际计划的传感器使用在第二步骤中被动态地添加到预印刷的数据。
68.可以使用传感器染料化学,其中所感测的性质是环境的、物理的或生物的性质。感测的性质的指定状况引起化学或物理状态变化的激活,导致传感器染料的颜色状态的变化。颜色状态的变化导致传感器数字信息显现在传感器增强的二维条形码内的传感器染料模块的图案(pattern)中。当使用针对使用中的二维条形码符号体系的标准读取和误差校正算法的扩展读取条形码时,传感器数字信息将恢复。
69.环境传感器的示例包括温度监测器,测量累积热暴露或超过设定的高温阈值或低温阈值;时间、时间

温度结果、辐射暴露监测仪;气体或湿度暴露监测器(每个超过累积暴露阈值或瞬时阈值)。医疗传感器的示例包括记录患者体温计;测量诸如黄曲霉毒素或肉毒毒素之类的生物毒素的水平的阈值试验;并且包括用于感测诸如朊病毒之类的生物制剂或诸如感染性细菌之类的生物有机体的存在的比色免疫测定。
70.图1a、图1b、图1c和图1d中分别示出了二维(2d)条形码的示例数据结构100、2d条形码的编码的数据的示例数据结构、2d条形码的内容数据的示例数据结构、以及2d条形码的参考数据的示例数据结构的框图。2d条形码包括编码的数据104和参考数据106。编码的数据104可以包括内容数据108和格式和版本数据110。内容数据108可以包括有效载荷数据112、填充数据114、误差检测和校正数据116、以及剩余空间118。格式和版本数据110提供对
内容数据108进行解码所需的信息。例如,格式和版本数据110可以包括遮盖信息。参考数据106是标识正在使用哪个协议所需的数据,并允许读取器定位和扫描2d条形码。参考数据106可以包括对准数据124、寻迹器(finder)数据126、定时数据128、定位数据130和方位数据132。有效载荷数据可以包括静态数据134和动态数据136。例如,如下面在图2a、2b、2c和2d中更详细地讨论的,定位数据130可以包括位置块138或定位模块,并且寻迹器数据126可以包括寻迹器图案142或寻迹器模块。另外,对准数据124可以包括对准块146。定时数据128可以包括定时图案148。参考数据106还可以包括分离器、标识模块、和方位模块。
71.图2a和图2c中示出了示例2d条形码,并且图2b和图2d中示出了它们相应的参考数据106和格式和版本数据110。图2a包括2d条形码156(例如,数据矩阵)的所有编码的数据104和参考数据106。图2b仅示出2d条形码156的参考数据106。例如,包括寻迹器图案142和定时图案148的参考数据106包围2d条形码156的内容数据108。图2c包括2d条形码158(例如,qr码)的所有编码的数据104和参考数据106。图2d仅示出2d条形码158的参考数据106。例如,参考数据106可以包括位置块138、对准块146、和定时图案148。
72.图3a和图3b中示出了2d条形码156的表示。图3c和图3d中示出了2d条形码158的表示。每个2d条形码的表示示出了参考数据区160和编码的数据区162。编码的数据区域162可以包括静态数据134、动态数据136、以及误差检测和校正数据116。此外,2d条形码156可以包括可以不被用于编码的数据104或提供参考数据106的多个未使用位。2d条形码158可以包括剩余空间118,该剩余空间118可以包括多个未使用位。
73.虽然这里所描述的一些示例使用数据矩阵,但是应理解,可以通过改变类似的途径以符合适用的2d条形码标准来随其它二维条形码方案使用这些类似的途径。数据矩阵是按照iso/iec 16022信息技术—自动识别和数据捕获技术—数据矩阵条形码符号规范形成的二维误差校正条形码符号。ecc 200数据矩阵符号系统利用reed

solomon误差校正来从经受有限量的意外损坏或故意更替的符号恢复编码的数据。本文所提到的所有数据矩阵都是ecc 200符号类型的,并且可以是正方形或矩形形状,并且分别由行数和列数来标识。
74.数据在数据矩阵中被编码为8位码字或符号字符值的序列。码字可以包含数据或reed

solomon误差校正(rsec)校验字符值。应当理解,这里描述的一般方法可以使用其它码字大小,其它数据布局和其它形式的误差校正码,并且该通用数据矩阵仅作为示例进行描述。
75.每个模块是矩阵中的可视单元,其包括用于对一位数据进行编码的数据矩阵符号。每个模块或被表面地着色为黑色或或被表面地着色为白色。模块矩阵是包含在由寻迹器图案界定的符号的区域中的二进制位图矩阵的视觉表现。寻迹器图案可以是由沿着符号模块矩阵的两个边缘的相连实线形成的“l”,伴有沿着符号的相对的边缘的白色模块和黑色模块的交替图案。参见图16。应当理解,在其它条形码符号体系中,可以采用其它寻迹器图案。
76.图16示出了编码的数据“1234567890”的14
×
14正方形数据矩阵320。该数据矩阵具有两部分:成型为由沿着符号的两个边缘的相连实线形成的“l”的寻迹器图案,以及沿着该符号的相对的边缘的白色模块322a和黑色模块322b的交替图案。符号码字被编码在寻迹器图案内部的12
×
12模块矩阵330中。
77.14
×
14数据矩阵320的12
×
12模块矩阵330的详细结构在图17中被示为位图矩阵
200。14
×
14数据矩阵包含18个码字,每个码字由与码字的八个位相对应的八个模块组成,称为“犹他(utah)”。12
×
12位图矩阵示出了14
×
14数据矩阵中所有18个码字的布局。
[0078]“犹他”是编码1个码字的8个模块的布置。它可以被布置为具有频繁地以犹他州的形状的图案的单一连接组,或者被形成为分开成两种图案的连接的模块的两个子组。编码码字9的连续的犹他270示出了位在连续犹他内典型布置。相反地,码字4的犹他由两个较小的子组组成:编码位4.3至4.8的在位图矩阵200的顶部的子组272a以及编码位4.1和4.2的在位图矩阵的底部的子组272b。
[0079]
图18中示出了10
×
10数据矩阵位图矩阵300内的码字犹他布置的总体布局。迹线(trace line)310示出了用于在位图矩阵内放置码字犹他的整体方法。在比较图17和图18时注意以下各项的放置:
[0080]
犹他2的全部位
[0081]
犹他3的位3.6

3.8
[0082]
犹他4的位4.3

4.8
[0083]
犹他5和6的全部位
[0084]
这些位位置相对于数据矩阵符号的左上角(ulc)处于相同的位置。根据iso/iec 16022标准附录f.3,大小高达26
×
26的所有正方形数据矩阵和所有矩形数据矩阵符号,这些位位置在它们的放置方面相对于每个数据矩阵符号的ulc是不变的。这些位位置为数据矩阵符号定义了“不变位图”。应当理解,其它条形码标准可以具有不同的不变位图。在图19中,在数据矩阵符号405的ulc中示出了不变位图410。为定义术语,在使用传感器模块进行增强之前,印刷的数据矩阵符号称为“底层数据矩阵符号”;其码字序列为编码“底层数据码字及其rsec误差校正码字”的“底层符号码字序列”。应当理解,取决于所采用的误差校正的具体类型,其它符号体系具有它们自己的底层符号、底层码字序列、底层数据码字和误差校正码字。
[0085]
图4包括提供2d条形码的示例处理400的流程图。虽然参考图4中所示的流程图描述了处理400,但是应当理解,可以使用执行与处理400相关联的动作的许多其它方法。例如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0086]
示例处理400可以从确定包括一组静态数据134和一组动态数据136的一组有效载荷数据112开始(块402)。例如,该组静态数据134可以包括产品的序列号、批号、批次号、和阈值暴露温度(例如,30℃)。另外,该组动态数据136可以包括当被读取器解码时通知用户产品是否超过阈值暴露温度的信息。接下来,生成包括该组静态数据的编码的版本的2d条形码,并且该2d条形码包括冗余空间(块404)。在示例实施例中,冗余空间可以包括多个未使用的位、填充区、和/或误差检测和校正区(例如,剩余空间118)。另外,冗余空间可以包括格式信息区、版本信息区和/或参考数据区。另外,冗余空间可以包括全部的剩余空间和/或全部的多个未使用的位。另外,冗余空间可以包括填充数据的一部分,或者可以包括所有填充数据。冗余空间还可以包括内容数据的一部分、参考数据的一部分、或内容数据和参考数据中所包括的各种部分和/或全部数据的组合。接下来,冗余空间的至少一部分被指定为被适配为存储该组动态数据136的动态区域(块406)。接下来,使用静态墨水、以及使用响应于至少一个环境的改变而改变状态的动态墨水的动态区域上的该组动态数据的编码的版本
来印刷2d条形码,以使得该组动态数据136处于多个状态中的一个状态(块408)。在示例实施例中,该组动态数据136可由2d条形码的读取器读取,并且当该组动态数据136处于多个状态中的每个状态中时,该组2d静态数据134都可由2d条形码的读取器读取。在一个示例实施例中,动态墨水可能对诸如温度、时间、时间和温度、冷冻、辐射、有毒化学品、或这些因素的组合之类的环境的因素敏感。在示例实施例中,墨水可以是热变色墨水。例如,动态墨水可以是被设计为在40℃下从白色永久变为黑色的水性不可逆热变色墨水。另外,热变色墨水可以是可逆的。例如,可逆热变色墨水可以是液晶墨水或无色染料墨水(示例包括qcr解决方案可逆热变色墨水和hws金沙公司(sands corporation)墨水)。在示例实施例中,墨水可以是光致变色墨水,其可以是可逆的或不可逆的。例如,动态墨水可以基于暴露于uv光而改变状态。此外,墨水可以是对时间和温度敏感的墨水(示例包括onvu指示剂)。动态墨水可以从较深的颜色变为较浅的颜色、较浅的颜色变为较深的颜色,可以改变透明度或不透明度的水平,和/或可以改变反射率或吸收性的水平,或者可以改变允许条形码在一个或多个状态下可被读取器读取的任何其它合适的特性。例如,动态墨水可以从较浅的颜色变为深蓝色,深蓝色可被读取器读取为黑色。此外,任何合适的颜色的组合可被用于一种或多个动态墨水的状态。
[0087]
在示例实施例中,动态墨水可以响应于环境的因素而永久地改变或不可逆地改变。例如,某种化学物质在暴露于一定温度下时可能经历热降解。供应商可能想知道化学物质在运输和储存期间是否达到高于30℃的温度。如果动态墨水不可逆地改变,则可以对该组动态数据136进行解码,以通知供应商该化学物质曾暴露于高于30℃的温度,并且容器的内容物可能已经经历了热降解。提供在冗余空间中具有该组动态数据136的二维条形码有利地允许个人在动态墨水被激活之前以及在动态墨水已经被从处于第一状态的该组动态数据136激活以表述处于第二状态的一组动态数据136之后使用读取器来读取2d条形码。例如,即使在该组动态数据136处于第二状态后,原始2d条形码仍然是可读的并且允许读取器获得该组静态数据134,例如,序列号,批号、和批次号,这有利地允许该组静态数据134和动态数据集合136被印刷在同一2d条形码上,而不会该组动态数据136从第一状态改变到第二状态时丢失静态数据134。
[0088]
传感器染料化学物质被用来检测感测到的环境或医学性质的状况的变化。由于数据矩阵模块表面上是黑色或白色,因此可以使用如表1中所示的6种类型的传感器染料化学过程。这里“b”指的是黑色状态;“w”指的是白色状态;“x”指的是染料处于透明色状态。
[0089]
表1.所选传感器染料化学过程的类型和颜色属性
[0090]
传感器染料化学过程未激活状态激活状态w

x白色透明w

b白色黑色b

w黑色白色b

x黑色透明x

w透明白色x

b透明黑色
[0091]
假设黑色和白色染料色状态是不透明的,因此在黑色或白色状态下会隐藏底层的颜色。然而,当染料处于透明色状态(x)时,底层颜色现在是可见的。
[0092]
由于传感器染料模块图案可以在数据矩阵符号的黑色或白色模块上套印,或者代替数据矩阵模块被印刷,因此数据矩阵符号中的传感器染料模块的颜色状态会在传感器染料化学物质活化时发生变化。不同的传感器染料化学系统在编码传感器数据方面具有不同的性质。
[0093]
从彩色到透明状态的传感器染料系统通常与印刷在数据矩阵中的底层位模式一起使用,并且该图案中的所有位都被传感器染料覆盖,产生了在被激活前一直覆盖那些模块的均匀的黑色或白色状态。一旦被激活,传感器染料会变得透明,并且数据矩阵条形码中的底层位图可见。替代的,从透明色状态到黑色或白色状态的染料系统可以选择性地覆盖印刷在数据矩阵符号中的均匀黑色或白色图案的模块,并且在激活后,传感器染料模块图案中的编码的数据现在是可见的。后一系统具有以下优点:传感器染料编码的数据可以在印刷传感器染料模块时确定,传感器染料模块可以在与数据矩阵符号的预印刷不同的时间和位置处被印刷。
[0094]
在该示例中,使用中的传感器染料化学物质可以在逐模块的基础上被准确地印刷在预印刷的数据矩阵模块上,或者替代数据矩阵模块被印刷。例如,这可以在多工位印刷机上进行。这样做另一方法是通过使用2通道压电喷墨印刷机来按需进行,其中一个通道包含用于印刷数据矩阵的黑色墨水而另一个通道包含要在数据矩阵模块的顶部上印刷或者代替数据矩阵模块被印刷的传感器染料。通过添加传感器模块而增强的最终数据矩阵符号是“传感器增强的二维条形码符号”的一个示例。
[0095]
如果使用2通道喷墨印刷机,那么所使用的传感器染料化学物质在印刷时应该是已知的,特别是在传感器模块代替正常印刷的数据矩阵符号模块被印刷的情况下。
[0096]
在传感器染料化学物质在印刷底层数据矩阵时已知的套印传感器模块的情形下,可能对指定使用的染料系统的指示位本身进行编码。底层数据矩阵中的指示位被与传感器染料模块套印。使用这些指示符位将使数据矩阵读取器能够知道正在使用的染料系统及其激活状态,从而知道如何解释扫描的数据矩阵符号。
[0097]
需指出的是,在表2中,对每个指示位而言,0=白色,l=黑色。只有4种最常见的染料化学过程,其中一种状态是透明的,另一种是黑色或白色,这些状态由指示位编码。
[0098]
表2.最常见的传感器染料化学过程的指示位
[0099][0100]
无论是在传感器激活之前还是之后,都可以从扫描的图像恢复印刷的指示符位的值,并且可以与从底层数据矩阵读取的指示符位进行比较。然后根据表3确定染料系统和激活状态。
[0101]
表3.从扫描图像中恢复激活状态和指示位
[0102][0103][0104]
传感器染料模块本身的颜色值可用于对传感器数据进行编码,传感器数据仅由于模块颜色状态在传感器染料激活时发生变化而变得可见或发生变化。
[0105]
在整个传感器增强的二维条形码可能尚未均匀地暴露于激活每个传感器染料模块的条件的情况下;或者当传感器模块可能丢失或损坏时;当传感器颜色变化激活阈值对于每个传感器染料模块不精确时,将传感器数据本身编码在误差校正码中是有用的。
[0106]
这里假设传感器模块的颜色可以被二值化为0或1。例如,5位传感器模块颜色数据可以编码两个有用的数据块:传感器产品类型和激活条件。相关联的参数可以使用由5位数值索引的内部表进行编码。
[0107]
许多类型的误差校正码可用于编码传感器数字信息。通常是对二进制编码的传感器数据的传感器染料位模式进行编码。有用的误差校正码包括汉明(hamming)码、博斯

查德胡里

霍昆格母(bose

chaudhuri

hocquenghem,bch)码、格雷(golay)码、单码、雷德

密勒(reed

muller)码、法尔(fire)码、卷积码、以及雷德

所罗门(reed

solomon)码。
[0108]
作为示例,bose

chaudhuri

hocquenghem bch(n,k,t)二进制误差校正码对于编码二进制数据串是熟知的;这里k位的字符串在具有t个误差校正位的n位长的码内。多达(t除以2)位可以被误差校正。例如,qr码和超级码二维条形码符号体系使用bch(15,5,7)码,其可以在n=15位中编码k=5位并校正(7除以2)=3位误差。存在用于对这些码进行解码和误差校正的标准解码和误差校正技术。iso/iec 18004信息技术—自动识别和数据采集技术—qr码2005条码符号体系规范的附录c中的表c.1给出了针对数值0,1
……
31的完整的15位码序列。在表4中概述了iso/iec 18004表c.1。数值0和31被预留并且不被编码,因为它们表示未激活的染料模块状态:数值0(全部bch位=0)针对w

x和w

b传感器染料化学过程;数值31(全部bch位=1)针对b

x和b

w传感器染料化学过程。
[0109]
表4.5位传感器数据的bch(15,5,3)编码
[0110]
[0111][0112]
当bch(15,5,7)被编码在数据矩阵符号中时(无论传感器位是否被激活),传感器位数据的恢复可以通过首先从传感器增强的二维条形码符号的扫描和解码中恢复传感器数字信息来实现。从特定的传感器染料模块图案中提取15位bch编码的二进制数。应指出的是,存在许多用于对bch编码的数据进行解码和误差校正的标准方法。在r.e.barahut的“theory and practice of error control codes(corr.edition)(误差控制码的理论和实践(corr.版))”1983(isbn

10:0

201

10102

5)第166页中讨论了经典的peterson

gorenstein zierler解码器。s.a vanstone和p.c.van oorschot的“an introduction to error correcting codes with applications(具有应用的误差校正码的介绍)”1989(isbn

10:0

7923

9017

2)第219页给出了用于bch(15,5,7)解码的有用且实际的算法。使用用于对bch(15,5,7)编码的数据进行解码和误差校正的方法来提取5位传感器数据。
[0113]
可以在传感器染料模块图案中编码其它类型的传感器数字信息。这包括任何类型的可视图案和图像,比如,iso或ansi或iso警告标志和符号,或任何其它类型的设计图形。编码的位数和在过程中故意损坏的数字(受底层数据矩阵符号上的视觉图案的物理范围的影响)以及底层数据矩阵的大小及其可用数目的rsec码字都影响可视图案和图像编码能力。
[0114]
也在底层数据矩阵符号被预先印刷之后对传感器染料模块图案进行编码。这允许不同的技术被用于印刷底层数据矩阵,然后印刷传感器染料模块图案。这也允许在先前印刷的数据矩阵上使用不同种类的传感器染料化学物质,而在印刷底层数据矩阵本身时传感器染料化学物质是未知的。
[0115]
在示例实施例中,非特权读取器可能能够读取2d条形码的静态数据134,并且可能不能读取2d条形码的动态数据136。在另一示例实施例中,只有特权读取器可能能够读取2d条形码的静态数据134和动态数据136。在某些情形下,在条形码上具有非特权读取器无法读取的动态数据136可以有利地允许制造商或供应商在2d条形码上包括他们可能不希望向公众或客户提供的信息。此外,具有可读取静态数据134和动态数据136的特权读取器有利地允许使用特权读取器的个人在不必使用多个读取器的情况下获得静态数据134和动态数据136二者。
[0116]
图5是示出了使用处理400印刷的示例2d条形码的流程图500。如图5所示,通过处理502来印刷2d条形码,该2d条形码在动态区域192上具有一组动态数据的编码的版本。在
该示例中,一组动态数据集136被印刷在2d条形码的右下角的多个未使用的位120上。动态墨水198被用于多个未使用的位120的左上方和右下方的信息模块。在使用动态墨水198印刷动态区域之后,条形码处于第一状态504(即,动态墨水198尚未被激活)。在动态区域192中使用的动态墨水198在暴露于指定的环境的改变506时激活成为纯黑色。一旦2d条形码暴露于环境的改变506,动态区域192中的一组动态数据136就发生变化,并且2d条形码变为第二状态508,并且将环境的改变506的信息传送给读取器。
[0117]
图6a是可以被编码在2d条形码内的一组静态数据134和一组动态数据136的文本表示,图6b是被编码为二进制信息模块编码的文本动态数据的示例。图6c和图6d是示出了2d条形码的动态数据从第一状态改变到第二状态的流程图。例如,该组静态数据134包括诸如序列号(sn)、批次号(bn)和批号(ln)之类的产品信息。在本示例中,序列号为498760003、批次号为654、且批号为35a1。该组静态数据集合134不发生改变。另外,在图6a中以第一状态210(顶部)和第二状态212(底部)示出了该组动态数据136。例如,该组动态数据136可以用在达到30℃以上的阈值暴露温度时从第一状态210改变到第二状态212的动态墨水198来印刷。处于第一状态210的该组动态数据136的文本表示是“<”(即小于)该组静态数据134中指定的阈值暴露温度的,并且处于第二状态212的该组动态数据136的文本表示是“>”(即,大于)该组静态数据134中指定的阈值暴露温度(在此情形下为30℃)的。在示例实施例中,可以使用该组静态数据134和该组动态数据136的二进制8位表示来编码2d条形码,如图6b所示。例如,“<”的二进制表示可以是“00111100”,而“>”二进制表示可以是“00111110”。在本示例中,二进制零(0)位着色为白色,二而进制一(1)位着色为黑色。应当理解,可以使用各种其它颜色组合来印刷2d条形码,并且可以使用各种其它编码方法。为了说明的目的,已经提供了黑色和白色以及二进制(8位)编码。图6c表示具有处于第一状态210的一组动态数据136的2d条形码,该组动态数据136响应于诸如温度升高到高于30℃之类的环境的改变而转变到第二状态212。例如,图6c中所示的2d条形码中使用的动态墨水198示出了响应于大于阈值暴露温度的温度而从白色激活为黑色的动态墨水198。在另一示例实施例中,如图6d所示,动态墨水198可以响应于诸如冷冻或暴露于低于0℃的阈值暴露温度之类的环境的改变506而从黑色激活为白色。
[0118]
图7包括提供如图8所示的2d条形码的示例处理420的流程图,这将在下面进一步详细讨论。尽管参照图7所示的流程图描述了处理420,但是应当理解,可以使用执行与处理420相关联的动作的许多其它方法。例如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0119]
示例处理420可以从确定一组静态数据134开始(块422)。例如,该组静态数据134可以是序列号、批次号和/或批号等。接下来,确定一组动态数据136(块424)。在示例实施例中,该组动态数据集136可以具有第一状态210和第二状态212。例如,处于第一状态的动态数据136可以是未被暴露于uv光的,而处于第二状态的动态数据136可以是被暴露于uv光的。此外,处于第一状态的动态数据136可以是在低于30℃的温度,而处于第二状态的动态数据136可以是在大于30℃的温度。然后,生成第一2d条形码(块426)。例如,计算机可以基于该组静态数据134和处于第一状态210的该组动态数据136的输入来生成第一2d条形码。在示例实施例中,第一2d条形码可以包括该组静态数据的编码的版本和处于第一状态210
的该组动态数据196的编码的版本。另外,该组静态数据134和处于第一状态210的该组动态数据136可以包括第一多个信息模块218和第二多个信息模块220。例如,第一多个信息模块218可以是黑色模块,并且第二多个信息模块220可以是白色信息模块。然后,生成第二2d条形码(块428)。例如,计算机可以基于该组静态数据134和处于第二状态212的该组动态数据136的输入来生成第二2d条形码。在示例实施例中,第二2d条形码可以包括该组静态数据的编码的版本和处于第二状态212的该组动态数据196的编码的版本。另外,该组静态数据的编码的版本和处于第一状态210的该组动态数据196的编码的版本可以包括第三多个信息模块224和第四多个信息模块226。例如,第三多个信息模块224可以是黑色模块,并且第四多个信息模块226可以是白色信息模块。应当理解,第一多个信息模块218和第三多个信息模块224可以是白色的,而第二多个信息模块220和第四多个信息模块226可以是黑色的。而且,应当理解,第一多个信息模块218和第三多个信息模块224和/或第二多个信息模块220和第四多个信息模块226可以是各种颜色、透明度水平、和/或反射率水平的,或者可以具有允许2d条形码由可读取器读取的任何其它合适的特性。在示例实施例中,第三多个信息模块224可以包括所有第一多个信息模块218加上一个或多个信息模块228的集合。另外,第二多个信息模块220可以包括所有第四多个信息模块226加上一个或多个的信息模块228的集合。然后,比较第一2d条形码和第二2d条形码(块430)。例如,第一2d条形码和第二2d条形码可以包括具有零(0)或一(1)的值的二进制数据,其可以对应于针对二进制值零(0)被着色为白色而针对二进制值一(1)被着色为黑色的每个信息模块。然后,将信息模块214分类为第一组230和第二组232(块432)。在示例实施例中,第一组230可以包括介于第一2d条形码的第一多个信息模块218和第二2d条形码的第三多个信息模块224之间的公共信息模块。另外,第二组232可以包括第二2d条形码的第三多个信息模块224的独有信息模块。例如,计算机可以将第一2d条形码和第二2d条形码共有的所有黑色信息模块分类到第一组230中。另外,计算机可将第二2d条形码独有的所有黑色信息模块(即,在第一2d条形码中为白色并且在第二2d条形码中为黑色的信息模块)分类到第二组232中。然后,使用静态墨水194和动态墨水198来印刷2d条形码(块434)。在示例实施例中,第一组230可以以静态墨水194进行印刷,并且第二组232可以以动态墨水198进行印刷。另外,动态墨水198可以被适配为响应于特定环境的因素的出现而激活。在示例实施例中,动态墨水198可以对诸如温度、时间、时间和温度、冷冻、辐射、有毒化学品、或这些因素的组合之类的环境的因素敏感。
[0120]
在示例实施例中,第一多个信息模块218和第三多个信息模块224可以被适配为可在视觉上与印刷表面234区分,并且第三多个信息模块224和第四多个信息模块226可以是无法在视觉上与印刷表面234区分。应当理解,可以使用各种印刷技术,包括使用墨水、染料、油漆和/或任何其它合适的材料等进行的印刷。另外,可以使用各种其它技术来改变2d条形码的印刷表面234的视觉外观,例如,蚀刻、燃烧、熔化、去除材料、和/或适于印刷2d条形码的任何其它工艺。例如,印刷表面234可以包括被黑色顶层覆盖的白色基底,该黑色顶层被蚀刻掉以露出下面的白色基底。另外,印刷表面234可以包括被黄色顶层覆盖的蓝色基底,以及各种其它颜色组合。
[0121]
图8是示出使用处理420印刷的2d条形码的示例部分的流程图。如图8所示,第一2d条形码部分216是示例条形码的一部分,其包括一组静态数据的一部分的编码的版本以及处于第一状态210的一组动态数据196的一部分的编码的版本。第二2d条形码部分222是包
括一组静态数据的一部分的编码的版本以及处于第二状态212的一组动态数据196的一部分的编码的版本的示例条形码的一部分。所有黑色信息模块是第一2d条形码部分216的第一多个信息模块218和第二2d条形码部分222的第三多个信息模块224之间的第一组公共信息模块230。另外,以虚线描画轮廓的信息模块可以是第二2d条形码部分222的第三多个信息模块224的第二组独有信息模块232。例如,当该组动态数据136从第一状态210转换到第二状态212时,第二组信息模块232可以包括从白色变为黑色的所有信息模块。仅使用一种动态墨水198有利地允许以更有效和更具成本效益的方式来印刷2d条形码。此外,仅使用一种动态墨水198有利地降低了由于多个动态墨水的偏移或延迟的激活时间而使代码变得不可读的风险。应当理解,这里公开的示例实施例可以转换为各种二维条形码,包括aztec码、代码1(code 1)、crontosign、cybercode、dataglyphs、数据矩阵、datastrip码、ezcode、大容量彩色条形码、intercode、maxicode、mmcc、nexcode、pdf417、qode、qr码、shotcode、sparqcode等。
[0122]
图9包括生成2d条形码的示例处理440的流程图。尽管参考图9所示的流程图描述了处理440,但是应当理解,可以使用执行与处理440相关联的动作的许多其它方法。例如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0123]
示例处理440可以从确定一组静态数据134开始(块442)。例如,该组静态数据134可以是序列号、批次号、和/或批号等。接下来,确定一组动态数据136(块444)。在示例实施例中,该组动态数据136可以具有第一状态210和第二状态212。该组动态数据136可以具有不止两个状态。例如,该组动态数据136可以具有第一状态210、第二状态212(例如,通过高于25℃而激活)和第三状态(例如,通过高于40℃而激活)。然后,生成第一2d条形码(块446)。例如,计算机可以基于该组静态数据134和处于第一状态210的该组动态数据136的输入来生成第一2d条形码。在示例实施例中,第一2d条形码可以包括该组静态数据的编码的版本以及处于第一状态210的该组动态数据196的编码的版本。此外,该组静态数据134和处于第一状态210的该组动态数据集136可以包括第一多个信息模块218和第二多个信息模块220。例如,第一多个信息模块218可以是黑色模块,并且第二多个信息模块220可以是白色信息模块。然后,生成第二2d条形码(块448)。例如,计算机可以基于该组静态数据集134和处于第二状态212的该组动态数据136的输入来生成第二2d条形码。在示例实施例中,第二2d条形码可以包括该组静态数据的编码的版本和处于第二状态212的该组动态数据196的编码的版本。另外,该组静态数据134和处于第二状态212的该组动态数据136可以包括第三多个信息模块224和第四多个信息模块226。例如,第三多个信息模块224可以是黑色模块,并且第四多个信息模块226可以是白色信息模块。应当理解,第一多个信息模块218和第三多个信息模块224可以是白色的,而第二多个信息模块220和第四多个信息模块226可以是黑色的。此外,应当理解,第一多个信息模块218和第三多个信息模块224和/或第二多个信息模块220和第四多个信息模块226可以是各种颜色、透明度或不透明度水平、和/或反射率或吸收率水平的,或者可以具有允许条形码由读取器读取的任何其它合适的特性。然后,将第一2d条形码与第二2d条形码进行比较(块450)。例如,第一2d条形码和第二2d条形码可以包括具有零(0)或一(1)的值的二进制数据,其可以对应于针对二进制值零(0)被着色为白色而针对二进制值一(1)被着色为黑色的每个信息模块。然后,将信息模块分类为第一组
230、第二组232和第三组(块452)。在示例实施例中,第一组230可以包括介于第一2d条形码的第一多个信息模块218和第二2d条形码的第三多个信息模块224之间的公共信息模块。另外,第二组232可以包括第二2d条形码的第三多个信息模块224的独有信息模块。在示例实施例中,第三组可以包括第一2d条形码的第一多个信息模块218的独有信息模块。例如,计算机可以将第一2d条形码和第二2d条形码共有的所有黑色信息模块分类为第一组230。另外,计算机可将所有第一2d条形码独有的黑色信息模块(即,在第一2d条形码中为黑色而在第二2d条形码中为白色的信息模块)分类为第三组。此外,计算机可以将第二2d条形码独有的所有黑色信息模块(即,在第一2d条形码中为白色而在第二2d条形码中为黑色的信息模块)分类为第二组232。然后,使用静态墨水194,第一动态墨水和第二动态墨水印刷2d条形码(块454)。在示例实施例中,第一组230可以用静态墨水194来印刷。另外,第二组232可以用第一动态墨水来印刷。第一动态墨水可以被适配为响应于特定环境的因素的出现而激活。此外,第三组可以用第二动态墨水来印刷,并且第二动态墨水可以被是适配为响应于特定环境的因素的出现而激活。例如,第一动态墨水可以被印刷为白色并且在达到30℃时激活为黑色,并且第二动态墨水可以被印刷为黑色并且在达到30℃时激活为白色。应当理解,第一动态墨水和第二动态墨水可以被印刷为多个颜色组合。在一个示例实施例中,第一动态墨水和第二动态墨水可以对诸如温度、时间、时间和温度、冷冻、辐射、有毒化学品、或这些因素的组合之类的环境的因素敏感。另外,在示例实施例中,第一动态墨水和第二动态墨水可以同时激活。例如,第一动态墨水和第二动态墨水可以都在印刷后72小时激活,以使得第一动态墨水从白色变为黑色,同时第二动态墨水从黑色变为白色。另外,第一动态墨水和第二动态墨水可以在满足温度阈值(例如,在0.1℃温度范围内的精度)后同时激活。使第一动态墨水和第二动态墨水同时激活有利地允许2d条形码在任何时候都是可读的,因为2d条形码将不是处于第一状态(即,第一2d条形码)就是处于第二状态(即,第二2d条形码)。
[0124]
图10a、图10b和图10c是使用处理440印刷的示例2d条形码的信息模块集的框图。具体地,图10a示出了第一2d条形码部分216(即,该组动态数据136处于第一状态210)的第一多个信息模块218和第二多个信息模块220。图10b示出了第二2d条形码部分222(即,该组动态数据136处于第二状态212)的第三多个信息模块224和第四多个信息模块226。图10c从上到下分别显示了信息模块的第一组230、第三组238、和第二组232。例如,第一组230包括介于第一2d条形码部分216的第一多个信息模块218和第二2d条形码部分222的第三个多个信息模块224之间的公共信息模块,这些信息模块被描绘为交叉线阴影模块。第二组232包括第二2d条形码部分222的第三多个信息模块224的独有信息模块,这组信息模块在图10c的底部图片中被描绘为黑色模块。另外,第三组238包括第一2d条形码部分216的第一多个信息模块218的独有信息模块,并且这组信息模块由图10c的中间图片中的黑色模块来描绘。在该示例中,第一组230可以用静态墨水194来印刷,第二组232可以用第一动态墨水240来印刷,并且第三组238可以用第二动态墨水242来印刷。例如,第二组232可以用第一动态墨水240来印刷,该第一动态墨水240被适配为响应于特定环境的因素的出现而激活(即,从白色变为黑色)。另外,第三组238可以用第二动态墨水242来印刷,该第二动态墨水242被适配为响应于特定环境的因素的出现而激活(即,从黑色变为白色)。应当理解,利用不止一种动态墨水来生成2d条形码有利地允许该2d条形码被印刷为具有更大部分的变化动态数据,这些变化动态数据可以包括误差检测和校正数据116。例如,通过使用多个动态墨水,2d条
形码能够改变2d条形码的若干不同区域,使得非特权读取器能够读取该组静态数据134和处于多个状态的该组动态数据136以给出多个输出,而无需误差检测和校正数据116覆写指定的输出。
[0125]
图11包括生成2d条形码的示例处理460的流程图。尽管参照图11所示的流程图描述了处理460,但是应当理解,可以使用执行与处理460相关联的动作的许多其它方法。例如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0126]
示例处理460可以从确定一组有效载荷数据112开始(块462)。在示例实施例中,该组有效载荷数据112可以包括一组静态数据134和一组动态数据136。另外,该组动态数据136可以具有第一状态210和第二状态212。接下来,计算机可以生成2d条形码(块464)。在示例实施例中,2d条形码可以包括该组静态数据的编码的版本、适于存储该组动态数据的编码的版本的动态区域192、以及误差检测和校正数据116。然后,印刷机可以使用静态墨水194来印刷2d条形码并且使用动态墨水198来在在动态区域192上印刷一组编码的动态数据(块466)。在示例实施例中,2d条形码可以被附着到诸如食品、药品之类的各种产品。在示例实施例中,动态墨水198可以响应于至少一个环境的改变而改变状态,以使得该组动态数据136处于第一状态210或第二状态212。另外,在示例实施例中,误差检测和校正数据116可以适应动态区域192中的该组动态数据136的变化,以使得当该组动态数据136处于第一状态210时该2d条形码可以由读取器读取并且可以产生第一输出,并且当该组动态数据136处于第二状态212时该2d条形码可以由读取器读取并且可以产生第二输出。在示例实施例中,可以在填充区域中提供动态区域192。另外,可以在数据区域的一端提供动态区域192。提供包括适应该组动态数据136的变化的误差检测和校正数据116的2d条形码有利地允许个人使用非特权读取器,并且还有利地允许个人使用非特权读取器来获得两个不同的输出读数。例如,在不生成具有适应动态区域192中的该组动态数据136的变化的误差检测和校正数据116的2d条形码的情况下,非特权读取器可以仅产生第一输出,而不管2d条形码是包括处于第一状态210的一组动态数据136还是包括处于第二状态212的一组动态数据136。
[0127]
图12包括读取2d条形码的示例处理470的流程图。虽然参考图12所示的流程图描述了处理470,但是应当理解,可以使用执行与处理470相关联的动作的许多其它方法。例如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0128]
示例处理470可以从读取器读取2d条形码中包含的一组静态数据134开始(块472)。在示例实施例中,2d条形码可以用静态墨水194和动态墨水198来印刷。另外,可以用静态墨水194来印刷该组静态数据的编码的版本。接下来,读取器可以读取该2d条形码中所包括的一组动态数据136(块474)。在一个示例实施例中,可以用动态墨水198来印刷该组动态数据196的编码的版本。另外,该组动态数据136可以被印刷在2d条形码上的冗余空间中。接下来,读取器可以生成该组静态数据134的第一输出(块476)。然后,读取器可以生成该组动态数据136的第二输出(块478)。在示例实施例中,第二输出可以取决于动态数据处于多个状态中的哪个状态,例如,大于30℃或小于30℃。
[0129]
图13包括读取2d条形码的示例处理490的流程图。尽管参照图13所示的流程图描述了处理490,但是应当理解,可以使用执行与处理490相关联的动作的许多其它方法。例
如,可以改变许多块的顺序,可以间歇地重复或连续地执行许多块,某些块可以与其它块相结合,并且所描述的许多块是可选的,或者可以仅被偶然地执行。
[0130]
示例处理490可以从读取器读取2d条形码中所包括的一组静态数据134开始(块492)。在示例实施例中,2d条形码可以用静态墨水194和动态墨水198来印刷。此外,可以用静态墨水194来印刷该组静态数据的编码的版本。接下来,读取器可以读取包括该2d条形码中所包括的一组动态数据136(块494)。在示例实施例中,可以用动态墨水198来印刷该组动态数据196的编码的版本。另外,该组动态数据136可以被印刷在该2d条形码的动态区域192中。接下来,读取器可以生成该组静态数据134和该组动态数据136的输出(块496)。在示例实施例中,当该组动态数据136处于第一状态210时,输出可以是第一输出,并且当该组动态数据136处于第二状态212时,输出可以是第二输出。
[0131]
图14是2d条形码提供系统的框图。该系统可以包括计算机292和印刷机290。该系统可用来提供条形码102。计算机292可以包括一个或多个计算机程序或组件。应当理解,这里描述的所有公开的方法和过程可以使用一个或多个计算机程序或组件来实现。这些组件可以被提供为任何常规的计算机可读介质或机器可读介质上的一系列计算机指令,这些常规的计算机可读介质或机器可读介质包括易失性或非易失性存储器,比如,ram、rom、闪速存储器、磁盘或光盘、光存储器、或其它存储器介质。指令可以作为软件或固件被提供,和/或可以被整体或部分地实现在诸如asic、fpga、dsp或任何其它类似设备之类的硬件组件中。指令可以被配置为由一个或多个处理器执行,当一个或多个处理器执行这些计算机指令的系列时,执行或促进全部或部分所公开的方法和过程的执行。另外,计算机292可以包括显示器,并且可以具有到一个或多个通信信道(例如,因特网或某些其它语音和/或数据网络,包括但不限于任何合适的广域网或局域网)的连接。
[0132]
计算机292可以包括通过地址/数据总线电耦合到一个或多个存储器设备、其它计算机电路、以及一个或多个接口电路的一个或多个处理器。处理器可以是任何合适的处理器,例如,微处理器。存储器优选地包括易失性存储器和非易失性存储器。另外,存储器可以存储与条形码提供系统中的其它设备交互的软件程序。该程序可以由处理器以任何合适的方式执行。存储器还可以存储指示从计算机或条形码读取器接收的文档、文件、程序、条形码等的数字数据。其它计算机电路可以包括各种各样的硬件组件,包括asic或用于操纵特定格式的数据(比如,条形码数据)的其它专用电路。
[0133]
一个或多个显示器、印刷机290和/或其它输出设备也可以经由接口电路连接到计算机292。显示器可以是液晶显示器或任何其它类型的显示器。印刷机290可以印刷从计算机292生成和接收的条形码。另外,一个或多个存储设备也可以经由接口电路连接到计算机292。例如,可以将硬盘驱动器、cd驱动器、dvd驱动器、和/或其它存储设备连接到计算机292。存储设备可以存储任何类型的数据,例如,条形码数据100、图像数据、历史访问或使用数据等。
[0134]
图15a和图15b是2d条形码读取系统的框图。该系统可以包括读取器200,该系统可以用来读取条形码102。在示例实施例中,读取器200可以是特权读取器或非特权读取器。读取器200可以是专用条形码读取器或被配置为读取条形码的装置,比如,移动设备、个人数字助理或pda、智能电话、膝上型计算机、平板计算机、或台式计算机、以及任何其它用户设备。读取器200可被适配为读取1d和2d条形码,或者可被适配为仅读取2d条形码。读取器200
还可以经由通信网络与其它网络设备发送、接收、或交换数据。网络设备可以是计算机292、不同的读取器200、或者可经由通信网络进行访问的任何其它设备。而且,某些数据可以被存储在读取器200中,这些数据还可以被临时或永久地存储在服务器上,例如,在存储器或存储设备中。网络连接可以是任何类型的网络连接,例如,蜂窝或无线连接、以太网连接、数字用户线、电话线、同轴电缆等。可以通过适当的安全软件或安全措施来控制对读取器200或动态数据136的访问。个体用户的访问可以由读取器200定义并且被限制到某些数据和/或动作。例如,用户可以仅有访问非特权读取器的权限,该非特权读取器可能仅能读取条形码102上的静态数据134。另外,用户可以具有访问特权读取器的权限,该特权读取器可能能够只读取条形码102上的动态数据或者动态数据和静态数据两者。因此,条形码读取系统的用户和/或管理员可能需要向一个或多个读取器200注册。另外,可以实现用于管理位于读取器200内和/或服务器中的数据的各种选项。例如,可以在读取器200中实现管理系统,该管理系统可以使用任何合适的数据传输的方法来在本地和/或远程地更新、存储、和/或备份条形码数据100。
[0135]
读取传感器增强的二维条形码符号的方法具有多个要求。读取传感器增强的数据矩阵符号是可能的:
[0136]
1.如果在传感器染料模块图案中只有有限数目的模块改变颜色状态,并且
[0137]
2.如果所改变的模块受限于少量的犹他,并且
[0138]
3.如果底层数据矩阵中有足够的雷德
·
所罗门(reed solomon)误差校正能力,
[0139]
则可以利用rsec过程来在由传感器激活引起的模块的颜色状态改变之前恢复底层数据矩阵中的底层码字数据。
[0140]
表5示出了高达26
×
26的所有正方形数据矩阵符号和所有矩形数据矩阵符号的数据和rsec码字容量。
[0141]
每个数据码字通常需要两个rsec码字来恢复底层数据。以16
×
16正方形数据矩阵为例,其具有12个数据码字(12个数据信息)的容量,并具有12个rsec码字(12个rsec犹他)。因此,如果激活的传感器模块改变了16
×
16个符号中的4个数据犹他,则利用8个rsec码字来恢复针对更改的犹他的那些码字中的数据。这留下了可用于校正任何其它符号损坏的4个额外的rsec码字。
[0142]
表5.不同大小的数据矩阵符号的总数据和rsec码字
[0143]
[0144][0145]
取决于传感器染料模块图案的结构是否已在基础数据矩阵中进行编码,利用用于传感器增强的二维条形码的两种读取过程。在第一种情形下,传感器染料模块图案的结构尚未在传感器增强的二维条形码的底层数据矩阵中进行编码:
[0146]
1.作为数据矩阵读取过程的一部分扫描并光学地处理图像,并构建扫描的图像的扫描二进制位图。有关一种方法,请参阅iso/iec 16022。
[0147]
2.处理扫描二进制位图以构建底层符号码字序列,
[0148]
3.在符号码字序列上利用雷德

所罗门(reed

solomon)误差校正处理来在由激活的传感器模块引起的任何更改之前恢复底层数据码字。有关一种方法,请参阅iso/iec 16022。
[0149]
4.从与扫描二进制位图大小相等的底层数据码字序列构建底层二进制位图。有关一种方法,请参阅iso/iec 16022。
[0150]
5.在每个位位置,对扫描二进制位图和底层二进制位图进行异或(or)运算以形成与扫描二进制位图大小相同的传感器数字信息位图。
[0151]
6.根据情境规则处理传感器数字信息位图。
[0152]
在传感器染料模块图案的结构已经被编码在传感器增强的二维条形码的底层数据矩阵中的情形下:
[0153]
1.作为数据矩阵读取过程的一部分扫描并光学地处理图像,并构建扫描的图像的扫描二进制位图。有关一种方法,请参阅iso/iec 16022。
[0154]
2.处理扫描二进制位图以构建底层符号码字序列,
[0155]
3.在符号码字序列上利用雷德

所罗门(reed

solomon)误差校正处理来在由激活的传感器模块引起的任何更改之前恢复底层数据码字。有关一种方法,请参阅iso/iec 16022。
[0156]
4.利用编码在底层数据码字中的信息,在扫描二进制位图内确定包含传感器数字信息的传感器染料位图,并按照适当的位顺序提取二进制信息序列。
[0157]
5.当传感器数据已经被bch(15,5,7)编码时,使用bch误差校正处理的标准方法来恢复5位二进制编码的传感器数据(否则解码解码失败)。
[0158]
第一优选实施例利用温度阈值敏感的传感器染料化学过程。传感器染料化学过程为w

x;白色染料元素被套印在白色印刷介质上所印刷的底层数据矩阵的黑色模块上。假定在印刷数据矩阵符号时所使用的传感器染料化学过程是已知的。
[0159]
假设在数据矩阵符号中编码的数据结构使用gs1应用标识符并符合gs1通用规范,第15版第2期(2015年1月)(https://www.gs1.org/docs/barcodes/gs1_general_specifications.pdf)
[0160]
这里使用15位bch(15,5,7)误差校正来编码5位传感器数据。由于套印传感器染料模块是白色的,所以与15位bch编码的“1”位相对应的黑色模块需要被印刷在底层数据矩阵中。
[0161]
出于示例性目的,传感器数据bch编码以及指示所使用的传感器染料化学过程的2个指示符位仅使用图19中所示的16
×
16ecc 200数据矩阵符号的犹他3、5和6。犹他5和6以及犹他位3.6

3.8相对于符号ulc处于与图19中的不变位图410中相同的位图位置。
[0162]
指示符犹他位3.6和3.7指示正在使用表1中的哪种传感器染料化学过程。假设将要使用的传感器染料化学过程在印刷数据矩阵时是已知的。
[0163]
所选的传感器化学物质的模块将套印犹他位3.6和3.7。取决于所选的传感器染料化学物质,当传感器染料处于未激活状态或激活状态时,位3.6和3.7将如表4中那样呈现。
[0164]
图20示出了来自iso/iec 16022的大小为14的数据矩阵位图505,并且标识了不变位图410的犹他5和6以及犹他位3.8。这些分别是标号510、520和530。标号为540犹他3的前5位(即,位3.1

3.5,这些为不在不变位图410中)可用于编码关于使用中的传感器染料化学过程和/或传感器染料位模式的附加信息。
[0165]
按照gs1通用规范中定义的gs1系统,这是用于在数据矩阵中编码信息的最广泛使用的系统,可以使用gs1应用标识符ai(90)。ai(90)被预留用于贸易伙伴之间相互商定的信息,例如,关于传感器使能的数据矩阵的出现。由于应用程序标识符可以出现在gs1数据矩阵中的任何序列中,ai(90)将在fnc1后立即出现,以确保15个bch编码的传感器位b1

b15位于不变位图410中。由于只有7位字符能够被编码在gs1应用程序标识符中,因此在520处的犹他5的最高有效位5.1和在530处的犹他6的位6.1及其在激活之前和激活之后的颜色状态在这里是不重要的。
[0166]
如图21所示,16
×
16数据矩阵600的不变位图410部分包括610a犹他1位1.5和1.8;620犹他2;630a犹他3位3.6

3.8;640a犹他4位4.3

4.8;650犹他5;660犹他6;以及670a犹他7位7.2、7.4、7.5、7.7和7.8。需要说明的是,图6中示出在这七个犹他周围的其它犹他位是为了参考目的并且易于与图20的位图相对应。例如,610b犹他1位1.1

1.4、1.6和1.7;640b
犹他4位4.1和4.2;以及670b犹他7位7.1、7.3和7.6。
[0167]
最高有效位b15将被编码在630a处的630a犹他位3.8。650处的犹他5位5.2到5.8将编码bch编码的传感器位的b14至b7。660处的犹他6位6.2到6.8的将编码bch编码传感器位的位b7至b1。
[0168]
由于在第一优选实施例中使用白色至透明的传感器染料化学过程,所以编码的传感器数据位黑和白图案b15

b1应当被预先印刷在数据矩阵中。然后将w

x传感器染料套印在这些编码的位上;这是底层数据矩阵中的所有位bl

15或者至少是那些黑色位b15

b1。
[0169]
考虑当传感器数值为“4”时的示例。从表2中,bch编码b15

b1为001000111101011。因此,在图20中的数据矩阵大小为14的位图中,犹他位3.8、5.2

5.8和6.2

6.8被设置为对与这些位b15

b1相对应的黑色模块进行编码,因为这些模块将被以白色到透明传感器染料套印。犹他位5.1和6.1被设置为“0”以确保白色模块被印刷。表6示出了ai(90)数据串被印刷在16
×
16数据矩阵的前七个犹他中。回想一下,每个犹他编码一个8位码字。
[0170]
表6.针对w

x传感器染料的ai(90)ascii和数据矩阵码字串示例
[0171][0172][0173]
在630b处的犹他3的位3.1

3.5不在不变位图410中,因为它们位于针对所有大小
的数据矩阵的数据矩阵符号的底部边缘。然而,可以在这里对数据进行编码,这在传达关于使用中的传感器染料的性质的特定信息以及编码在增强的数据矩阵中的传感器染料图案时是有用的。
[0174]
由于只有犹他4的部640a出现在不变位图部分410中,所以犹他4被用作间隔物,以确保位b14

b1分别被印刷在650和660处的犹他5和6中。任何7位ascii字符都可以被编码在ut4中。它通常用于产品相关的信息。
[0175]
图22中示出了仅利用表6中的信息印刷的16
×
16数据矩阵700。在图23中,数据矩阵800被示出为在结构上与数据矩阵600相似。然而,这里,按照图22中的编码底层数据矩阵700,不变位图部分中的适当的模块被设置为黑色或白色。剩余的数据矩阵码字(犹他8

12)用填充字符填补以填写12个可用的数据码字。符号中的后12个码字(犹他13

24)是rsec误差校正码字。在图23中,为方便起见,犹他8

24的内容被显示为灰色,因为它们与ai(90)的编码无关。
[0176]
图24中示出了未激活的传感器增强的数据矩阵900的视觉图像。需指出的是,白色传感器染料是套印指示符位910。传感器数据的b15

b1的套印bch编码920被显示为与犹他位5.1和6.1处的未印刷和未套印的白色模块不可区分的白色染料模块。它们具有值“00000000000000”,指示针对该传感器染料化学过程系统中的b15

b1的未激活的默认传感器数值“0”。应当指出的是,指示符位为指示w

x传感器染料化学过程的未激活状态的“00”。
[0177]
一旦被激活,所有传感器模块变得透明,并且视觉图像回复到图22,示出了正确的15位bch位模式001000111101011,使用上述用于bch(15,5,7)的标准方法之一进行对其解码,以恢复传感器数值“4”。
[0178]
第二优选实施例利用温度阈值敏感的传感器染料化学过程x

b,其通常由用于制备热敏纸的热激活的无色染料系统表示。这里,透明染料模块被套印于在白色介质上印刷的底层数据矩阵的白色(未被印刷的)模块上。
[0179]
这里同样有用于编码5位传感器数据的15位bch(15,5,7)误差校正,这些传感器数据也是通过在仅在当传感器染料激活时出现黑色模块的位图位置处的底层印刷的数据矩阵符号上套印传感器染料模块来编码的。这里还假设所用的传感器染料化学过程在印刷数据矩阵符号时是已知的。
[0180]
利用最初是透明的任何传感器染料化学物质,可以使用不同的印刷机来印刷底层的数据矩阵符号,并且随后作为单独的处理利用传感器染料模块进行套印,从而增加在传感器模块被套印时获知的数据矩阵信息。在示例性实施例中,二维条形码可以被附着到各种产品,例如,食品,药品,生物制品,或可受益于环境、物理或生物监测的任何其它产品。例如,条形码可以被印刷或应用于这样的产品的容器上。
[0181]
传感器数据15位bch编码图案以及2个指示符位与第一优选实施例的相同。从表2看出,对于x

b传感器染料化学,印刷de指示符位3.6和3.7将为“10”。如在第一优选实施例中,犹他3的前5位,位3.1

3.5可用于编码关于使用中的传感器染料化学过程和/或传感器染料位模式的附加信息。
[0182]
为了与用于在数据矩阵中编码信息的最广泛使用的系统保持一致,使用gs1应用标识符ai(90)。ai(90)被预留用于贸易伙伴之间相互商定的信息,例如,关于传感器使能的
数据矩阵的出现。如第一优选实施例中那样,ai(90)被用在以犹他1

7数据结构格式中,表7中示出了这里编码的具体数据。
[0183]
考虑与第一优选实施例中相同的示例,其中传感器数值为4。从表4看出,bch编码b15

b1为001000111101011。由于在该第二优选实施例中使用透明到黑色的传感器染料化学过程,因此b15

b1中一旦被激活就变为黑色模块的bch编码的传感器染料模块必须被选择性地太阴在底层数据矩阵中的b15

b1白色模块上。指示符位3.6和3.7也被与传感器染料模块套印。
[0184]
表7示出了在图25中的16
×
16底层数据矩阵1000的前7个犹他中针对该第二优选实施例印刷的ai(90)数据串。图25中示出了仅被印刷有表7中的信息的底层数据矩阵1000。
[0185]
参考图26中的ulc细节1100,指示符位3.6和3.7分别被设置为“1”和“0”。犹他位3.8、5.2

5.8和6.2.

.6.8是针对所有这些位b15

b1的与“0”相对应的白色模块。犹他位5.1和6.1位被设置为“1”,因为它们不是bch位编码序列的一部分,并且数据矩阵标准iso/iec标准要求每个utah至少具有1个黑色模块。剩余的数据矩阵码字(犹他8

12)被用填充字符填补,以填写12个可用的数据码字,它们是根据iso/iec16022特别编码的。符号中的最后12个码字(犹他13

24)是rsec误差校正码字。在图26中,为方便起见,犹他8

24的内容被显示为灰色,因为它们与ai(90)的编码无关。
[0186]
表7.针对x

b传感器染料的ai(90)ascii和数据矩阵码字串示例
[0187]
[0188][0189]
当传感器增强的数据矩阵条形码符号处于未激活状态时,底层数据矩阵的白色模块将是可见的,显示针对b15

b1的bch编码为00000000000000或如图25中的传感器增强的数据矩阵1000和图26中的数据矩阵ulc细节1100中的传感器数值0。
[0190]
一旦传感器模块被激活,可见传感器增强的数据矩阵1200理想地将呈现为如图27中所示。现在将显示传感器数据位模式b15

b1:001000111101011,并且通过使用补充的标准bch解码技术在传感器染料位模式上如上所述地读取数据矩阵,传感器数值4将被恢复。应当指出的是,数据矩阵1200与底层数据矩阵1000是相同的,其中套印的传感器染料模块现在被激活为黑色(但是为清晰起见,在图27中被示出为如1220的深灰色)以揭示传感器数据位模式b15

b1,并且指示符位模式1210现在为“11”。
[0191]
第三优选实施例也利用温度敏感的传感器染料化学过程。这里处于未激活颜色状态的传感器染料模块被套印为在印刷在白色介质上的底层数据矩阵的不变位图中的单一传感器染料贴片。
[0192]
可以使用任何传感器染料化学过程r

s,只要任意颜色状态r和s都具有1)足够的可见颜色状态变化以及2)在660nm读取器照度下的足够对比度使得r颜色状态扫描为w或b并且s颜色状态扫描为补色b或w。这使得传感器染料贴片无论在未激活的状态下还是在激活的状态下都是在视觉上可分辨的并且是机器可读的,以使用上面提到的数据矩阵读取技术来将传感器染料模块复原为图像并进一步处理它,以确定传感器染料贴片的激活状态。
[0193]
可以使用不同的打印机或相同印刷机的不同台站:首先印刷底层数据矩阵符号,随后在单独的处理中用传感器染料贴片对其进行套印。
[0194]
在该示例中,示出了x

b传感器染料化学过程。传感器染料贴片是大小为约2
×
2个传感器染料模块的正方形。它被框出并以大小为4
×
4个模块的白色区域为中心。该4
×
4白框位于16
×
16数据矩阵的不变位图中,以确保该4
×
4白框及其所包围的传感器染色贴片在数据矩阵符号大小的宽泛范围内将始终相对于ulc位于相同的位置。
[0195]
图28示出了该4
×
4白框1310(从位3.6到位5.8)在示例16
×
16数据矩阵符号1300内的位置。该4
×
4白框1310包含4行犹他位,这4行犹他位构成如下:
[0196]
第1行:位3.6,3.7,3.8,4.3
[0197]
第2行:位2.5,5.1,5.2,5.3
[0198]
第3行:位2.8,5.3,5.4,5.5
[0199]
第4行:位6.2,5.6,5.7,5.8
[0200]
需要指出的是,在第三优选实施例中,位3.6和3.7不像在第一和第二优选实施例中那样被用作指示符位,而是在这里它们是4
×
4白框的一部分。
[0201]
朴素的方法是:创建没有数据限制的底层印刷的数据矩阵符号,并且仅在4
×
4白框1310中的16个底层数据矩阵模块上套印白色模块即可。取决于编码的数据以及1310中的任意黑色模块是否被故意套印,可以通过套印来故意损坏多达5个犹他及其编码的码字。在读取数据矩阵期间使用reed

solomon误差校正来恢复多达5个损坏的码字的常规方法将需要使用在16
×
16数据矩阵符号中的12个可用的rsec码字中的多达10个码字。这将几乎不会留下可用于其它意外符号损坏rsec码字。
[0202]
如在第一优选实施例和第二优选实施例中所示的示例中,在该示例中,也使用gs 1应用标识符ai(90)和犹他1

7数据结构格式来执行符号数据编码。特定于第三优选实施例的符号数据被编码在表8中。为方便起见,犹他8

24的内容在数据矩阵1300中被显示为灰色,因为它们与ai(90)的编码无关。
[0203]
犹他1和7不受4
×
4白框1310的创建的影响,因为它们在1310内没有位。犹他位2.5和2.8在1310以内。在ai(90)数据编码位2.5=“1”中,因此当被白色模块覆写时,犹他2将被故意损坏。犹他5整个在4
×
4白框1310内。由于数据采用iso/iec 16022数据矩阵的方式进行编码,所以在任何有效的犹他中将始终至少有1个黑色模块;因此,无论什么7位ascii数据字符被编码在犹他5中,它和它的代码字将通过用白色模块套印所有的犹他5模块而被故意损坏。
[0204]
但是,通过限制允许被编码在这些码字中的数据以使得在犹他位3.6

3.8、4.3、4.6和6.2中没有黑色模块(“1”位),可能避免对在4
×
4白框内的犹他3、4和6中的位位置的故意损坏。假设“x”表示犹他内的每个特定位位置中的“不关心”位位置,则可允许的8位数据矩阵码字形式如下:
[0205]
犹他3:xxxxx000
[0206]
犹他4:xx0xx0xx
[0207]
犹他6:x0xxxxxx
[0208]
表8示出了在图29中16x16底层数据矩阵1400的前7个犹他中的针对该第三优选实施例的ai(90)数据串。
[0209]
表8.针对贴片传感器的ai(90)ascii和数据矩阵码字串示例
[0210]
[0211][0212]
在图29中,仅使用表8中的信息来打印底层数据矩阵1400。剩余的数据矩阵数据码字(犹他8

12)被用数据矩阵填充字符填补。符号中的最后12个码字(犹他13

24)是rsec误差校正码字。
[0213]
在图30中,在数据矩阵1400的不变位图中示出了4
×
4白框1510,其对应于图28中的4
×
4白色区域1310。有若干种方式来产生该4
×
4白框1510,包括在底层数据矩阵1400上物理地套印白色模块。更好的方式是对用于底层符号的数据矩阵编码和符号生成软件进行修改,这是通过更改据矩阵的编码的14
×
14位图以确保在转换为黑色和白色模块之前,1510中的所有位位置都设置为“0”或者可替代地在印刷数据矩阵1400之前将4
×
4白色区域1510中的全部模块设置为白色。因此,首先从未在4
×
4白色区域1510中印刷黑色模块,也就不需要白色模块套印的步骤。
[0214]
正如在第二优选实施例中,在第三优选实施例中,二次印刷步骤被用于在4
×
4白框1510内印刷约2
×
2个传感器染料贴片1620,如图31所示。这里,传感器染料贴片1602被示出为激活的(为清楚起见以紫色表示)。
[0215]
在第三优选实施例的目的之一是在4
×
4白框1510内的传感器染料贴片1520的颜色状态在传感器染料激活时发生的可见的变化。第二个目的是所采用的传感器染料化学过程对上述数据矩阵读取器而言具有足够的对比度,以使得传感器染料贴片1620当未被激活时被读作w或b模块并且当被激活时被读作b或w模块。然后,对数据矩阵读取器而言,使用上述读取方法,无论是未激活的传感器染料贴片还是激活的传感器染料贴片的出现都是机器可读的。
[0216]
第三优选实施例的进一步改进是在数据矩阵读取的过程中:将应用如下知识:犹他2和5的码字已经被故意损坏,以提高在符号码字序列恢复时的里德

所罗门误差校正处理的效率。对在组合的数据加rsec码字序列中的未知位置处的错误码字的检测和校正要求针对每个损坏的码字使用2个rsec字符。但是,如果在应用里德

所罗门误差校正处理之前损坏的码字的位置是已知的(在此情形下是在码字2和5中),则仅需要1个rsec码字来恢复每个所识别的损坏的码字的正确码字值。这保留了可用于其它意外的数据矩阵符号损坏的校正的额外的未使用的rsec码字。
[0217]
可替代的实施例包括使用以下各项中的一个或多个
[0218]
·
代替数据矩阵的其它二维误差校正条形码符号,包括qr码、aztec码、最大码(maxicode)、pdf417和点码(dot code);
[0219]
·
利用不同于黑色、白色或透明的颜色状态的可替代传感器染料化学过程;
[0220]
·
底层印刷的二维误差校正条形码符号,其中符号的第一颜色状态或第二颜色状态均为除黑色或白色以外的颜色;
[0221]
·
底层二维误差校正条形码符号,其中第一颜色状态可以是未标记的介质表面并且第二颜色状态可以是直接标记的介质表面变化,反之亦然。
[0222]
在本公开的示例性方面中,一种传感器增强的二维条形码,包括:基板;设置在基板上的二维误差校正条形码符号;设置在基板上的呈永久色状态的第一层;以及设置在基板上的第二层。该条形码符号还包括多个模块,这些模块可选地是正方形、矩形、或圆形的,每个模块具有第一颜色状态或第二颜色状态之一。第二层可选地是通过以传感器染料模块图案套印第一层来设置的,该传感器染料模块图案包含传感器数字信息。该第二层还包括具有如下化学物质的传感器染料,该化学物质被配置为响应于环境的、物理的或生物的条件的出现而经历化学的或物理的状态改变以使得传感器染料的颜色状态发生改变,从而改变多个模块的子集的颜色状态。
[0223]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),环境的条件选自包括以下各项的组:时间、温度、时间

温度结果、光、湿度、气体蒸汽、以及辐射,并且其中,优选地,当环境的条件跨过阈值时,传感染料永久地改变颜色状态。
[0224]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一层形成在二维条形码的符号体系中的可读条形码符号。
[0225]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),二维误差校正条形码符号是来自由数据矩阵、qr码、aztec码、最大码、pdf417、和点码符号体系构成的符号体系组的。
[0226]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多
个方面结合使用),二维误差校正条形码符号利用里德

所罗门误差校正。
[0227]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),传感器染料在未被激活时初始处于白色、黑色或透明的颜色状态,并且一旦被激活就改变为不同的颜色状态。
[0228]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),当感测的性质的指定条件高于或低于阈值时,传感器染料永久地改变颜色状态。
[0229]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),感测的性质的指定条件是优选地通过利用比色免疫测定法检测到生物有机体、生物制剂、或生物毒素的存在。
[0230]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第二层提供传感器数字信息,该传感器数字信息优选地被编码在二维符号的不变位图中,并且更优选地被编码为二进制编码的传感器数据,更优选地,该二进制编码的传感器数据在误差校正码中,该误差校正码优选地选自由以下各项构成的组:汉明(hamming)码、博斯

查德胡里

霍昆格母(bose

chaudhuri

hocquenghem,bch)码、格雷(golay)码、单码、雷德

密勒(reed

muller)码、法尔(fire)码、卷积码、以及雷德

所罗门(reed

solomon)码。
[0231]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),被编码在传感器染料模块图案中的传感器数字信息是视觉图案或图像。
[0232]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),制品包括药品、生物制品、或食品,优选地为疫苗;容纳药品、生物制品、或食品的容器,优选地为疫苗小瓶;以及设置在容器上或容器中的传感器增强的二维条形码符号优选地被应用于容器的外表面。
[0233]
根据本公开的另一示例性方面,一种读取传感器增强的二维条形码符号的方法,包括:扫描并光学地处理传感器增强的二维条形码符号的图像,其包括从扫描的传感器增强的二维条形码符号的模块构建扫描二进制位图。该方法还包括从扫描二进制位图构建符号码字序列。然后,优选地通过对符号码字序列使用误差校正处理来从符号码字序列中恢复底层数据码字,误差校正处理优选地是里德

所罗门码。接下来,处理底层数据码字以形成底层符号码字序列。该方法还包括从底层符号码字序列、从扫描二进制位图构建底层二进制位图,该底层二进制位图优选地在大小上等于扫描二进制位图。可以在每个位位置处对扫描二进制位图和底层二进制位图执行异或运算以形成传感器数字信息位图。可选地,该方法包括:处理传感器数字信息位图以恢复包含二进制编码的传感器数据的二进制信息序列,优选地通过将二进制信息序列作为误差校正码序列进行处理,并利用误差校正处理来恢复二进制编码的传感器数据。该误差校正码优选地选自由以下各项构成的组:汉明码、博斯

查德胡里

霍昆格母码、格雷码、单码、雷德

密勒码、法尔码、卷积码、以及雷德

所罗门码。
[0234]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该方法包括处理传感器数字信息位图以识别传感器染料贴片,并根据传感器染料贴片的颜色状态确定是否已经响应于环境的条件而发生了传感器染料的激活。
[0235]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该传感器染料贴片位于数据矩阵条形码符号的不变区域中。
[0236]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该方法包括从传感器数字信息位图恢复视觉图案或图像。
[0237]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行生成2d条形码的方法,该方法包括:确定包括一组静态数据和一组动态数据的一组有效载荷数据,生成包括该组静态数据的编码的版本并且包括冗余空间的2d条形码,将该冗余空间的至少一部分指定为适于存储该组动态数据的动态区域,以及使用静态墨水印刷该2d条形码并且使用动态墨水在该动态区域上印刷该组动态数据的编码的版本,该动态墨水响应于至少一个环境的改变而改变状态,以使得该组动态数据处于多个状态之一。该组动态数据可由2d条形码的读取器读取,并且当该组动态数据处于多个状态中的每一状态时,该组静态数据都可由2d条形码的读取器读取。
[0238]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态墨水可响应于包括以下各项中的至少一项的环境的因素:温度、时间、辐射、光、以及有毒化学物质。
[0239]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态墨水可响应于时间和温度。
[0240]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态墨水可响应于冷冻。
[0241]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态墨水响应于环境的因素而永久地改变。
[0242]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态墨水响应于特定环境的因素的发生而从第一状态转变到第二状态,并且在特定环境的因素不再发生时,返回到第一状态。
[0243]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),冗余空间包括以下各项中的至少一项:多个未使用的位、填充区域、以及误差检测和校正区域。
[0244]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),其中所述冗余空间包括以下各项中的至少一项:格式信息区域、版本信息区域、以及参考数据区域。
[0245]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),非特权读取器能够读取2d条形码的静态数据并且不能读取2d条形码的动态数据。
[0246]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),只有特权的读取器能够读取2d条形码的静态数据并且不能读取2d条形码的动态数据。
[0247]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行提供2d条形码的方法,该方法包括:确定一组静态数据,确定一组动态数据,生成第一2d条形码,生成第二2d条形码,比较第一2d条形码和第二
2d条形码,并将信息模块分类为第一组和第二组,并且以静态墨水和动态墨水来印刷该2d条形码。该组动态数据具有第一状态和第二状态。第一2d条形码包括该组静态数据和处于第一状态的该组动态数据的编码的版本。该组静态数据和处于第一状态的该组动态数据包括第一多个信息模块和第二多个信息模块。第二2d条形码包括该组静态数据和处于第二状态的该组动态数据的编码的版本。该组静态数据和处于第二状态的该组动态数据包括第三多个信息模块和第四多个信息模块。第三多个信息模块包括所有第一多个信息模块加上一个或多个信息模块的集合。第二多个信息模块包括所有第四多个信息模块加上一个或多个信息模块的集合。第一组包括介于第一2d条形码的第一多个信息模块和第二2d条形码的第三多个信息模块之间的公共信息模块。第二组包括第二2d条形码的第三多个信息模块的特有信息模块。第一组被以静态墨水印刷,并且第二组被以动态墨水印刷。动态墨水被适配为响应于特定环境的因素的出现而激活。
[0248]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一多个信息模块和第三多个信息模块是黑色模块,并且第二多个信息模块和第四多个信息模块是白色模块。
[0249]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一多个信息模块和第三多个信息模块被适配为可在视觉上与印刷表面区分开,并且第三多个信息模块和第四多个信息模块无法在视觉上与印刷表面区分开。
[0250]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行提供2d条形码的方法,该方法包括:确定一组静态数据,确定一组动态数据,生成第一2d条形码,生成第二2d条形码,比较第一2d条形码和第二2d条形码,并且将信息模块分类位第一组、第二组和第三组,以及使用使用静态墨水、第一动态墨水、和第二动态墨水来印刷该2d条形码。该组动态数据具有第一状态和第二状态。第一2d条形码包括该组静态数据和处于第一状态的该组动态数据的编码的版本。该组静态数据和处于第一状态的该组动态数据包括第一多个信息模块和第二多个信息模块。第二2d条形码包括该组静态数据和处于第二状态的该组动态数据的编码的版本。该组静态数据和处于第二状态的该组动态数据包括第三多个信息模块和第四多个信息模块。第一组包括介于第一2d条形码的第一多个信息模块和第二2d条形码的第三多个信息模块之间的公共信息模块。第二组包括第二2d条形码的第三多个信息模块的特有信息模块,并且第三组包括第一2d条形码的第一多个信息模块的特有信息模块。第一组被以静态墨水印刷,第二组被以第一动态墨水印刷,并且第三组被以第二动态墨水印刷。第一动态墨水被适配为响应于特定环境的因素的出现而失效,并且第二动态墨水被适配为响应于特定环境的因素的出现而激活。
[0251]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一动态墨水和第二动态墨水可响应于包括以下各项中的至少一项的环境的因素:温度、时间、辐射、光、以及有毒化学物质。
[0252]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一动态墨水和第二动态墨水可响应于时间和温度。
[0253]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一动态墨水和第二动态墨水可响应于冷冻。
[0254]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),第一动态墨水和第二动态墨水同时激活。
[0255]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行提供2d条形码的方法,该方法包括:确定包括一组静态数据和一组动态数据的一组有效载荷数据,该组动态数据具有第一状态和第二状态,生成包括该组静态数据的编码的版本、适于存储该组动态数据的动态区域、和误差检测和校正数据的2d条形码,以及使用静态墨水印刷该2d条形码并且使用动态墨水在该动态区域上印刷编码的该组动态数据,该动态墨水响应于至少一个环境的改变而改变状态,以使得该组动态数据处于第一状态或第二状态,并且误差检测和校正数据适应动态区域中的该组动态数据的改变,以使得当该组动态数据处于第一状态时该2d条形码可由读取器读取并产生第一输出,并且当该组动态数据处于第二状态时该2d条形码可由读取器读取并产生第二输出。
[0256]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态区域设置在填充区域中。
[0257]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),该动态区域被设置在数据区域的一端。
[0258]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行读取2d条形码的方法,该方法包括:扫描2d条形码中所包括的一组静态数据,扫描该2d条形码中所包括的一组动态数据,生成该组静态数据的第一输出,以及生成该组动态数据的第二输出。该2d条形码被以静态墨水和动态墨水印刷,该组静态数据的编码的版本被以静态墨水印刷。该组动态数据的编码的版本被以动态墨水印刷,该动态墨水响应于至少一个环境的改变而改变状态,以使得动态数据处于多个状态之一。该组动态数据被印刷在二维条形码的冗余空间中。第二输出指示动态数据处于多个状态中的哪个状态。
[0259]
根据本公开的另一示例性方面(该示例性方面可以与前述方面中的任何一个或多个方面结合使用),一种装置可以执行读取二维(2d)条形码的方法,该方法包括:扫描2d条形码中所包括的一组静态数据,扫描2d条形码中所包括的一组动态数据,以及基于该组静态数据和该组动态数据生成输出。该2d条形码包括静态墨水和动态墨水。该组静态数据的编码的版本被以静态墨水印刷。该组动态数据的编码的版本被以动态墨水印刷,该动态墨水响应于至少一个环境的改变而改变状态,以使得动态数据处于多个状态之一。该组动态数据被印刷在动态区域中。当该组动态数据处于多个状态中的第一状态时,该输出是第一输出,并且当该组动态数据处于多个状态的第二状态时,该输出是第二输出。
[0260]
应当理解,对这里描述的示例实施例的各种改变和修改对于本领域技术人员将是显而易见的。在不脱离本主题的精神和范围并且不会减小其预期的优点的情况下,可以进行这样的改变和修改。因此,意图是所附权利要求书涵盖了这些改变和修改。并且,应当理解,从属权利要求的特征可以体现在每个独立权利要求的系统、方法和装置中。
[0261]
本发明所属领域的技术人员一旦受益于前述说明书和相关联的附图中的教导,就会想到这里所阐述的本发明的许多修改和其它实施例。因此,应当理解,本发明不限于所公开的具体实施例,并且这些修改和其他实施例旨在被包括在所附权利要求书的范围内。尽
管这里采用了具体的术语,但是它们仅在通用的和说明性的意义上使用,而不是为了限制的目的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献