一种二维码与孔阵码的转换方法与流程

文档序号:14504674阅读:3175来源:国知局
本发明涉及产品生产
技术领域
,尤其涉及一种二维码与孔阵码的转换方法。
背景技术
:产品问题的原因追溯是每个行业的制造商都面临的一个严峻挑战,从汽车制造行业到航空航天业,从医疗到食品行业,无不如此。在一个全球化的时代,企业追求关系管理,以实现客户满意度的最大化。消费和环境法规越来越严格,因此可追溯性就变得更有必要。制造商比以往任何时候都追求生产能力最大化,并希望降低成本。为了实现这一目标,必须监控整个制造流程中的每一个工序,并保存完整的历史记录。必须快速识别并纠正影响产品质量的问题,防止有缺陷的产品继续沿生产线往下流动,其最终目标是尽量实现零产品退货率。在电子行业中,pcb的生产同样需要满足客户对追溯性的要求,在发现问题时,客户希望可以快速定位问题原因和受影响的产品范围。目前,在各种产品(如多层pcb、fpc)的制作流程中,工厂一般直接用二维码作为信息载体在喷涂于板面,在各个工序中通过扫描枪来读取二维码信息并向该二维码中添加新的加工信息。但是,这种以二维码作为追溯标识的方式存在着容易受各种因素影响导致不易识别的缺陷,为此可将二维码转换为孔阵码来作为追溯标识以克服此缺陷,然而孔阵码所包含的孔数较大程度影响了加工工作量和加工效率,因而如何将二维码转换为具有较少孔数的孔阵码是目前亟待解决的问题。技术实现要素:本发明的目的在于提供一种二维码与孔阵码的转换方法,将二维码转换为具有较少孔数的孔阵码,减少加工工作量,提高工作效率。为达此目的,本发明采用以下技术方案:一种二维码与孔阵码的转换方法,所述二维码的规格为m×m,在所述m×m规格大于预设阈值时,所述转换方法为:将所述m×m规格的二维码转换为m×m规格的点阵码,再转换为m×m规格的二进制表格;将所述m×m规格的二进制表格由整体划分为至少两个二进制表格部分;将每个二进制表格部分分别转换为相应的孔阵码局部图;将所得到的全部孔阵码局部图合并为完整的孔阵码图;根据所述孔阵码图在产品上形成孔阵码。可选的,所述将m×m规格的二进制表格由整体划分为至少两个二进制表格部分的方法包括:获取机台打孔精度孔阵码区域尺寸l1×l2以及所述二维码的规格m×m;所述l1为长度、l2为宽度;根据公式计算得出组合列数n;按照公式x=[m/n],得到等分数x;将所述m×m规格的二进制表格按照每份组合列数为n的方式划分为x份。可选的,所述将m×m规格的二进制表格由整体划分为至少两个二进制表格部分的方法包括:获取机台打孔精度孔阵码区域尺寸l1×l2以及所述二维码的规格m×m;所述l1为长度、l2为宽度;根据公式计算得出组合列数n的最大值nmax;按照公式xmin=[m/nmax],得到等分数x的最小值xmin;将所述m×m规格的二进制表格按照每份组合列数为nmax的方式划分为xmin份。可选的,所述将m×m规格的二进制表格由整体划分为至少两个二进制表格部分的方法还包括:在将所述m×m规格的二进制表格按照每份组合列数为nmax的方式划分为xmin份时,使得等分值逆序总和最小。可选的,在将所述m×m规格的二进制表格按照每份组合列数为n的方式划分为x份后,若等分值有1,则在将相应二进制表格部分转换为孔阵码局部图时利用相应侧的列线生成孔。可选的,所述m×m=18×18时,将所述m×m规格的二进制表格由整体划分为五个二进制表格部分,各部分的规格分别为:18×4、18×4、18×4、18×4及18×2。可选的,所述将每个二进制表格部分分别转换为相应的孔阵码局部图的方法包括:将所述每个二进制表格部分中的数据转换成十进制数据并除以2n,使得表格中的每个数均小于1,得到m×1规格的孔阵码表格;根据所述m×1规格的孔阵码表格绘制孔阵码图。可选的,在所述m×m规格不大于预设阈值时,所述转换方法为:将所述m×m规格的二维码先转换为m×m规格的点阵码,再转换为m×m规格的二进制表格,其中的m×m小于预设值。将m×m规格的二进制表格转换为m×1规格的十进制表格。将所述m×1规格的十进制表格转换为m×1规格的孔阵码图,之后据此孔阵码图在产品上形成孔阵码。可选的,所述将m×1规格的十进制表格转换为m×1规格的孔阵码图的方法包括:将所述m×1规格的十进制表格中的每个数据除以2m,使得表格中的每个数均小于1,得到m×1规格的孔阵码表格;根据所述m×1规格的孔阵码表格绘制孔阵码图。可选的,所述二维码包括行排式二维码和矩阵式二维码。与现有技术相比,本发明实施例具有以下有益效果:本发明实施例可将二维码转换为具有较少孔数的孔阵码,大大减少加工工作量,降低加工成本,提高工作效率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为现有技术中的qr二维码例图;图2为现有技术中的dm二维码例图;图3为由图1所示qr二维码转换得到的点阵码;图4为由图2所示dm二维码转换得到的点阵码;图5为由表1所示3×3二进制表格转换得到的3×3点阵图;图6为由表2所示4×4二进制表格转换得到的4×4点阵图;图7为本发明实施例提供的规格不大于预设阈值的二维码至孔阵码的转换方法流程图;图8为由表4所示4×1孔阵码表格绘制的孔阵码图;图9为本发明实施例提供的规格大于预设阈值的二维码至孔阵码的转换方法流程图;图10为18×18二维码阵列图;图11为由图10所示18×18二维码转换得到的孔阵码图;图12为根据图11所示孔阵码图得到的孔阵码;图13为根据表5所示二进制表格产生的21×21点阵图;图14为根据表6转换得到的孔阵码图;图15为根据图14所示孔阵码图得到的孔阵码。具体实施方式为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。(一)二维码技术简介二维码,是结合了计算机、通信和光电传感三种技术发展起来的信息识别技术。它是按一定规则排列的黑白几何图形,在图形中的黑白位置分别对应“1”和“0”,从而组成一个二进制字符序列,该二进制字符可表示数字、字符等信息。根据编码原理不同,二维码分行排式二维码和矩阵式二维码两种类型。行排式二维码,由一维码按一定规则组合成多行形成。由于行排式二维码与一维码的关系,使得二者在编码原理上有相同之处,但行排式二维码编码规则与一维码不同,所以译码算法也不同。矩阵式二维条码,是通过深色和浅色两种颜色像素在一个矩阵中的分布实现编码的效果,编码中二进制的“1”用深色像素表示,二进制的“0”用浅色像素表示,最终所有像素构成一个矩形图形,像素的位置分布表示了矩阵式二维码包含的内容。矩阵式二维码常用码制有qrcode、maxicode、datamatrix等。在pcb行业中,二维码也得到广泛应用,其中主要采用的是datamatrix码制。(二)孔阵码简介不同于矩阵式二维码采用深浅两色块组合标记信息的方式,孔阵码是通过组合多个小孔在一块指定区域范围内的位置信息来标记需要记录的信息。(三)二维码存储信息机制矩阵式二维码是一种图形符号自动识别处理码制,通常具有纠错功能。其中具有代表性的矩阵式二维码由qr码,dm码等。如图1所示,qrcode二维码呈正方形,一般为黑白两色。它由编码区域和功能图形两部分构成,编码区域负责存储数据编码信息,功能图形用于定义版本信息、格式信息等固定格式的信息,所有功能图形区域都被空白区域包围用于与编码区域区分。qrcode二维码模型1是最早制作的qrcode二维码,最高版本为14(73x73码元),最多可以处理1167位数字。qrcode二维码模型2是模型1的改良版,最高版本为40(177x177码元),最多可处理7089位数字。它在二维码变形的情况下也能顺利读取数据。当二维码被打印在曲面上,或由于读取角度等原因导致二维码变形时,仍然可以通过设置在二维码内部的对齐模式有效读取。qrcode码符号有1~40个版本,分别表示四十种规格。每一版本符号比前一版本每边增加4个模块,即版本1的规格为21模块×21模块,版本2为25模块×25模块,……,版本40规格为177模块×177模块。如图2所示,datamatrix码(简称dm码)是最早的二维码之一,是目前所有条码中尺寸最小的,别适用于小零件的标识,直接印刷在产品实体上进行读取,广泛用在工业串号管理和产品最终等领域。dm码是二维矩阵图像,方形数据块(nominallysquaremodules)、查找模式边(finderpatternlboundary)和切换模式边(alternatingpatternmodule)组成,与qr码不同,dm码不具备7*7模块位置探测图形和3*3模块矫正图样,相对qr码尺寸更小,易标记在细小零件上。容量:(1)数字数据:3,116个字符;(2)字母数据:235个字符;(3)8位字节数据:1,556个字符;(4)汉字数据:不支持。dm码具有很强的纠错性能,端情况下只需要读取20%的数据即可对数据进行正确识别。需要注意的是,模块数量超过255时,dm码将进行拆分,码以切换模式边进行分割,高识别率。无论二维码采用哪种码制进行编码,真正需要的是它里面所存储的信息。图1与图2的样子虽然不同,但是最终从这两张二维码读取到的信息都是同样的四个字。对于图1和图2所示的二维码,可以将其转换成点形式二维码,分别如图3和图4所示。相对于在产品(如pcb板、fpc板)上刻印原来方块状的二维码,在产品上刻印点状码将更加高效和可靠。但上述点阵码的点数依旧较多,加工这种点阵码并不是最佳选择,为此,本实施例将提出一种孔阵码的形式用来取代该点阵码。首先,要知道点阵码是如何存储信息的,点阵码是采用二进制数进行编码,最后转化成二维码,其原理如下所述。一般来说,二维码的规格都比较大,如16×16,18×18这些规格都是常用的,但为了说明原理,不妨采用3×3、4×4的规格进行说明。对于3×3规格的点阵码可以这么理解:如下表1所示,表1是一张3×3规格的表格,其中存储了一些二进制信息,对于这些二进制信息可以将其图像化处理,其中对于“1”,可以采用深色圆点表示,对于“0”,可以采用空白表示,于是,能够将表1转化成一张点阵图,其形状如图5所示。001110101表1从图6可以看到,表1中数据为1的部分,使用黑色圆点表示,数据为0的部分,使用空心圆点表示,这样表1的信息就转化成了图5的图像,从数字到图像,尽管样子不一样,但它们所存储的信息是一样的。对于4×4规格的点阵码可以这么理解:首先,随机取一个4×4规格的二进制表格,如下表2所示;对于表2,依然可以按照“1”为深色圆点、“0”为空白的方式进行转换,可以得到图6。1010010110011100表2从以上分析能够看出,对于每一个存储二进制信息的表格,都能找到一张点阵图与之对应。另外,根据组合的知识可以知道二进制表格规格越大,那它能存储的信息也就越多,但相应的点阵图的点数就越多。对于qr二维码,21×21的规格是最小规格,这意味着每一张最小规格的点阵图具有441个点,而如今版本40的二维码规格为177×177,这意味着一张177×177的二维码需要31329个点,这对于工业应用是很不便的,因此本实施例提出一套编码规则,将点阵码转化成孔阵码,以大大减少孔数。(四)二维码转孔阵码编码规则本实施例提出了一种二维码与孔阵码的转换方法,包括:对于规格不大于预设阈值的二维码的转换方法,以及对于规格大于预设阈值的二维码的转换方法。(i)对于规格不大于预设阈值的二维码,其与孔阵码的转换方法如图7所示,包括:步骤101、将m×m规格的二维码先转换为m×m规格的点阵码,再转换为m×m规格的二进制表格,其中的m×m小于预设值。步骤102、将m×m规格的二进制表格转换为m×1规格的十进制表格。步骤103、对m×1规格的十进制表格中的每个数据除以2m,使得表格中的每个数均小于1,得到m×1规格的孔阵码表格。步骤104、根据m×1规格的孔阵码表格绘制孔阵码图。步骤105、根据孔阵码图在产品上形成孔阵码。下面将以4×4规格的二维码为例进行说明具体转换方法:对于4×4二维码,依然以图6为例。对于图6,可先将其转换为表2所示的4×4二进制表格,再转换为表3所示的4×1的十进制表格:105912表3这样,就将4×4的二维码转换成了4×1的十进制表格,为了将该信息转换成需要的可实现的孔阵码,继续做如下转换:4×1表格中的每个数据除以24,这样就得到表4,表4中的每个数均小于1。表4对于这个表4,可以将其转换成如图8所示的孔阵码图:将每个数据转换成点位置在一行的比例,就能将4列转换成一列点存储信息,如果列数增加,就能在很大程度上提升刻画二维码的效率。(ii)对于规格大于预设阈值的二维码,其与孔阵码的转换方法如图9所示,包括:步骤201、将m×m规格的二维码转换为m×m规格的点阵码,再转换为m×m规格的二进制表格。步骤202、将m×m规格的二进制表格由整体划分为至少两个二进制表格部分,每个二进制表格部分的规格小于m×m规格;步骤203、将每个二进制表格部分分别转换为相应的孔阵码局部图,得到至少两个孔阵码局部图。步骤204、将所得到的全部孔阵码局部图合并成完整的孔阵码图。步骤205、根据孔阵码图在产品上形成孔阵码。为了尽量减少最终形成的孔阵码的孔数,步骤202中m×m规格的二进制表格的划分方法包括:首先,获取机台打孔精度孔阵码区域尺寸l1×l2(l1为长度,l2为宽度)以及二维码规格m×m;其中,孔阵码区域尺寸一般为5mm×5mm或者4mm×4mm;然后,根据公式计算得出组合列数n的可取值;最后,按照公式x=[m/n],得到m×m规格的二进制表格划分的等分数x。在上述划分方法中,n可能会有多个值,使得等分数x也可能会有多个值,即存在多种划分方法。然而等分数x越大,需要加工的孔数就越多,因而,最佳等分数x=[m/nmax]。步骤203中,将每个二进制表格部分分别转换为相应的孔阵码局部图的方法为:先将每个二进制表格部分中的数据转换成十进制数据并除以2n,使得表格中的每个数均小于1,得到m×1规格的孔阵码表格;再根据m×1规格的孔阵码表格绘制孔阵码图。下面将采用pcb行业常用的18×18规格和21×21规格的二维码为例进行说明。①18×18规格的二维码转孔阵码以图10所示的18×18二维码阵列图为例,在转换之前可以明确的是,18×18要转成一个18×1孔阵图要求非常高。如果转成18×1规格的孔阵码,需要机台对孔的加工精度应该小于或等于,也就是238nm,这远远超过了目前机台实际加工所能到达的水平。为此,本实施例将对其进行转换,可以考虑将18×18分成18×4或者18×5这样的小部分,然后再将这样的小部分分别转换成孔阵码局部图。那么本实施例采用以下计算方法:首先,获取如下参数:a、机台打孔精度b、孔阵码区域尺寸l1×l2;c、二维码规格m×m,为18×18。对于打孔精度,其计算方法可以为:对于n列数据转换成一列数据,最小计量单位e*是:那么机台的打孔精度应该满足:这样,当给定机台打孔精度,根据二维码区域宽度l2,可以由式2得到nmax,最后根据nmax得到最佳方案。计算过程如下:假设给定机台精度l1×l2=4mm×4mm。由于n为整数,反解较为困难,可以将n从小到大代入到式2,取满足条件的最大值,可以得到nmax=4,于是可以将二维码数据分为x=[18/4]=5等份。而等分数x越大,需要加工的孔数就会相应增加,比如如果分成6份,那么需要增加18个孔,因此,在满足精度要求尽可能小、孔数尽可能少的约束条件下,可以得到最佳方案,即将18×18分为18×4,18×4,18×4,18×4,18×2。那么,经转换处理并合并后可以得到图11所示的孔阵码图,去掉孔阵码图中的线条修饰可以得到最后的孔阵码,如图12所示,该图共计93个孔,包括90个数据孔,3个定位孔;而原二维码数据共计414孔,很明显,这将大大减少加工量。②21×21规格的二维码转孔阵码首先,随机产生一张二维码,其对应的21×21规格的二进制表,如下表5所示。000010001100011111111000101101010000011110100111100010010101001000010101010101101011010000011000110110111001101100001000001110101000010100100000010111001111100110110011111010101011001000110111011000101000100011000010110100111110111001110101101011110010100010101000010001011001110100010100100010111111100001100000010000001111001011100111100010111000100001000010110101011101110101101001011011010101111100110010000110000011010000110111010000100表5接着通过该表5产生如图13所示的21×21规格的点阵图,对于该规格点阵图如果将其转换成21×1规格的孔阵码图是不现实的,因此本实例同样按照18×18规格的计算方法进行计算,过程如下:假设机台打孔精度即15.625um,l2=5mm,那么可以一步步代入式2计算得到nmax=5。因此,对21×21的二维码,最少需要将21列数据分成[21/5]=5份,于是可以将21×21规格的二维码分为以下几部分:(1)21×5,21×5,21×5,21×5,21×1;或者,(2)21×5,21×4,21×4,21×4,21×4;或者,(3)21×5,21×5,21×4,21×4,21×3;等等。很明显,21×5、21×4及21×3的加工要求精度依次递减。在实际操作中,首先需保证在满足机台打孔精度的前提下尽可能地减少加工孔的个数,其次需尽可能减少具有高精度要求的孔数,此时可以根据等分值逆序总和最小的判断原则来确定其中最佳方案。上述三种划分方案中,其中精度要求的孔数分布情况可以采用逆序数(序列中每两数比较,两数不等序列数加1)进行评估,以上方案(5,5,5,5,1)、(5,4,4,4,4)、(5,5,4,4,3)等序列逆序数分别为4、4、8,但(1)方案中21×5个数大于(2)方案,因而在上述三种划分方案中方案(2)为最佳方案。对于21×1这种只转换一列的数据,可以利用左侧竖列打5个孔表示该数据。根据上述规则,可以将21×21规格的二维码数据转换成下表6:06132311211113111116201623110104242311513129153124146302512186291122441922121914162724101220181825251100192928917310326214172019731482631314181546表6根据表6数据除以25,最后可将其转换成如图14所示的孔阵码图。去掉线条后,可以得到最终的孔阵码,如图15所示。相对于21×21规格二维图的441个孔,该图15只需要113个孔,其中110个数据孔,3个定位孔,大大提高了生产效率。综上,转换之前,需要如下信息:机台打孔精度孔阵码区域尺寸l1×l2(l1为长度,l2为宽度)以及二维码规格m×m;接着依据式2计算得到组合列数n,利用组合列数n计算出等分数x,最后得到满足以上条件的多种组合;其中最优方案应该是这样的:为保证加工孔数最少,这就要求等分数x等于[m/nmx];在加工孔数最少的基础上,为保证高精度要求的孔数尽可能少,这样就要求等分值(比如5,5,1,1)逆序总和最小。另外,若等分值有1,利用左侧列线打孔,这样可以减少一列孔。以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1