利用发光二极管感光特性来识别条码的装置的制作方法

文档序号:6474316阅读:155来源:国知局
专利名称:利用发光二极管感光特性来识别条码的装置的制作方法
技术领域
利用发光二极管感光特性来识别条码的装置技术领域本发明涉及一种图像识别装置和方法,尤其涉及一种条码识别装置和方法。
背景技术
条码技术已很普遍地存在于人们的生活中,超市、书店、百货公司等商 业场所已大量采用条码技术来完成商品的识别和计价。 一般的二维条码是由 多个并列的黑白条紋组成,也以包括灰色条紋,下文也将这些条紋称为色块。 这些色块的色度组合起来对应于一个唯一 的序列号。传统的条码读取装置中主要包括光感测器,通常采用线性的图像感测 单元并排列成条状;光源, 一般为发光二极管(LED),也是排列成条状, 以照亮图像感测单元所要照明的条状区域;镜头,当光源发出可见光或红外 光照射条码后,产生的反射光由镜头进入图像感测单元。反射光到达图像感 测单元后产生条码图像。在识别时,是用光感测器将接收反射光的光通量转 化为电通量,反射光的光通量与色块的色度有关,因而根据电通量可识别出 对应位置上色块的色度,进而得到该条码对应的序列号(ID)。具体地,可 参照美国专利US5616507以及CN00117626中公开的条码扫描装置。但是,这种条码识别技术利用了 LED的发光特性,并没有利用LED本 身具有的感光特性,从而需要采用价格较昂贵的光感测器。其存在成本高昂, 产品体积大的缺点。实用新型内容本发明要解决的技术问题是提出一种利用发光二极管感光特性来识别 条码的装置及其方法,其电路结构简单,成本低。本发明的构思是利用LED在接受光照的时候,产生的光电流与光照 强弱有关,借由此来识别目标色块的深浅。即LED对不同光强的感测情况 不同,从而识别出不同颜色,利用黑白或黑白灰色组成条形码,即可采用本 发明的装置和方法识别出不同条形码的序列号。基于以上构思,本发明提供了 一种利用发光二极管感光特性来识别条码 的装置,其特征在于,包括相互连接的发光二极管阵列和控制处理器,所述 发光二极管阵列至少包括排列在一列上的至少2个发光二极管。进一步地,上述装置还可具有以下特点所述发光二极管阵列分为一个或多个扫描组,每个扫描组又包括一个或 多个光收发组,每一光收发组至少包括相邻的一发射发光二极管和一接收发 光二极管,且每一扫描组中各个接收发光二极管并联,各个发射发光二极管 的负极并联,分别电连接到所述控制处理器的不同管脚,这些管脚和地之间 连接有电容。进一步地,上述装置还可具有以下特点所述各个扫描组中相同序号的发光二极管的正极相连,再分别连接到所 述控制处理器上相应的管脚。进一步地,上述装置还可具有以下特点所述控制处理器采用一微处理器芯片实现,该芯片具有片内RAM。 进一步地,上述装置还可具有以下特点 还包括一与所述控制处理器相连的外部非易失性存储器。 进一步地,上述装置还可具有以下特点所述控制处理器控制各个光收发组依次扫描,检测接收发光二极管的放 电时间,与相应发光二极管对标准色块的放电时间基准数据比较,结合条码 序列号对应的标准色块组合,判断出所扫描条码的序列号。进一步地,上述装置还可具有以下特点所述控制处理器包括校准控制单元、放电时间;险测单元、数据存储单元 和序列号识别单元,所述扫描控制单元与放电时间;险测单元和校准控制单元相连,所述放电时间检测单元还与校准控制单元和数据存储单元相连,所述 数据存储单元还与校准控制单元和序列号识别单元相连,所述序列号识别单 元还与校准控制单元或扫描控制单元相连。进一步地,上述装置还可具有以下特点所述扫描控制单元控制各扫描组中的光收发组依次扫描,在一次扫描 中,先对组中的接收发光二极管加反向偏压使其充电,然后对该组的一发射发光二极管加正向偏压使其发光并取消在接收发光二极管负极施加的电压;所述放电时间检测单元检测各接收发光二极管的放电时间,输出到所述数据存储单元;所述校准控制单元触发扫描控制单元进行校准相关的扫描动作,根据记 录的各发光二极管的放电时间值,记录或推算出各个接收发光二极管在标准 色块覆盖下的放电时间基准数据并保存在所述数据存储单元;所述序列号识别单元从所述数据存储单元读取检测到的放电时间数据 和放电时间基准数据,才艮据条码用于方向识别的色块对应的放电时间数据判 断该条码的放入方向后,将对用于序列号识别的色块对应的放电时间数据与 标准色块的放电时间基准数据比较,结合条码序列号对应的标准色块组合, 判断出所扫描条码的序列号。所述数据存储单元保存检测到的放电时间数据,校准后各接收发光二极 管在标准色块覆盖时的放电时间基准数据,以及序列号识别单元的计算结果。进一步地,上述装置还可具有以下特点所述LED阵列所在表面的两侧或周边设置有超出LED发光面0.5 5rnrn 的距离的突缘。综上所述,本发明利用LED的感光特性,并结合特定的充电、发光和 放电时序,实现了对条形码的扫描和识别,其电路结构简单,大大降低了成 本,具有很好的市场前景。


图1是本发明实施例条码识别装置的结构框图。图2是图l装置的一种硬件实现图。图3A是本发明条码及其对应LED阵列的一个示例的示意图。 图3B是本发明条码及其对应LED阵列的另一示例的示意图。 图4是与图3同一示例的条码识别装置对准条码扫描的示意图。 图5是接收LED负极放电波形图。图6本发明示例所有27个序列号对应的色块组合及其序列号的示意图。
具体实施方式

以下结合附图对本发明的具体实施方式
进行详细说明。图l是本实施例条码识别装置的结构框图,如图所示,包括相互连"l妄的 LED阵列11和控制处理器12。其中LED阵列11至少包括排列在一列上的多个LED,本实施例中均以 一 列 为例进行说明,这里的"排列在一列"是依照一般的习惯来描述,将其写成 "排列在一行"或者"排列一条直线上"应视之为完全等同的描述。控制处理器12用于控制各个光收发组依次扫描,检测接收LED的放电 时间,与相应LED对标准色块的放电时间基准数据比较,结合条码序列号 对应的标准色块组合,判断出所扫描条码的序列号。该控制处理器可以进一步分为扫描控制单元121,用于将LED阵列分为一个或多个扫描组,控制各扫 描组中的光收发组依次扫描。每一光收发组由相邻的至少两个LED组成。 在光收发组的一次扫描过程中,先对组中的接收LED加反向偏压使其充电, 然后对该组的 一个发射LED加正向偏压使其发光并取消在接收LED负极施 加的电压,接收LED将进行;改电。放电时间检测单元122,用于检测接收LED的放电时间,输出到数据存储单元123。具体可以检测接收LED负极的端电压,计算从开始放电(接 收LED负极悬浮且发射LED加有正向偏压的最早时刻)到接收LED负极 电压变化到与正极相等的时间,即为放电时间。校准控制单元123,用于触发扫描控制单元进行校准相关的扫描动作, 根据记录的各LED的放电时间值,记录或推算出各个接收LED在标准色块 覆盖下的放电时间基准数据并保存在数据存储单元。序列号识别单元124,用于从数据存储单元读取检测到的放电时间数据 和放电时间基准数据,先根据首尾色块(不局限于首尾,可以是条码任何位 置上的用于方向识别的色块)对应的放电时间数据判断该条码的放入方向, 再将对中间色块(不局限于中间色块,可以是条码任何位置上的用于序列号 识别的色块)扫描得到的放电时间数据与标准色块的放电时间基准数据比 较,结合条码序列号对应的标准色块组合,判断出所扫描条码的序列号。其 识别可以由扫描控制单元在扫描完成后触发,也可以由校准控制单元在完成 本次放电时间基准数据计算后触发。识别的具体方法见下文。数据存储单元125,用于保存检测到的放电时间数据,校准后各接收 LED在标准色块覆盖时的放电时间基准数据,以及序列号识别单元的计算 结果。该数据存储单元可以采用芯片内部的RAM来实现。上述装置还可以增加一个与所述控制处理器相连的非易失性存储器如 EEPROM,用于在失电状态下保存检测得到的各接收LED在标准色块覆盖 下的放电时间基准数据,还可以记录序列号的识别结果等。应说明的是,以上的单元划分及其名称并不是唯一的,但只要是实现了 上述功能,均应视为等同的装置。图2是实现上述装置的一个示例的硬件连接图,如图所示,包括在一列 上的16个LED (LED0 LED15 )分为两个扫描组,每组包括8个排为一列 LED,从第1个LED开始,相邻两个LED编为一个光收发组且不同光收发组的LED不同,Dl、 D3.......D15为发射LED, D2、 D4.......D16为4妄收LED。在每一扫描组,各个发射LED和各个接收LED的负极分别并联, 然后再分别连接到接脚IOC0 IOC3,接脚IOC0 IOC3均通过一电容接地。2 个扫描组中相同序号的两个LED正级并联并连接到一接脚,序号为1的2个LED正级并联后连接到IOD0接脚,序号为2的2个LE正级并l关后连接 到IOD1接脚,依此类推。各个接脚再电连接到MCU (微处理器)(图中 略)相应的管脚。控制处理器可采用Generalplus (凌通公司)的GPC1系列 芯片。在进4亍条码识别之前,需将一列上的LED分为一个或多个扫描组,确 定每一扫描组中要依次进行扫描的光收发组。由于发射LED是正对其下的色块打光的,其相邻甚至更远的LED都可 以收到该图形块的反射光。为了避免多个色块反射光对同一接收LED的干 扰,同时工作的多个光发收组之间应间隔足够的距离。为此将一列LED划 分为一个或多个扫描组,不同扫描组包括一个或多个光收发组,不同扫描组 的光收发组可同时扫描,但同 一扫描组中的光收发组只能依次进行扫描。那么如何选择LED组成光收发组呢?本实施例是将一列上的相邻LED 两两组合为若干光收发组。在其它实施例中,光收发组除了两两组合这种方 式外,也可以将3个连续LED作为一个光收发组,扫描时中间的LED作为 发射LED,与其相邻的两个LED作为接收LED。以上虽然列举了光收发组 组成的一些示例,但并不用于限制本发明,例如在有多列LED时,也可以 将两列或更多列中在LED阵列同一^f亍上的至少两个LED ( 2个或3个为佳) 组成光收发组,可以实现同样的扫描功能。再以一个示例对以上内容进行一下说明,假定要识别的条码1的编码格 式如图3所示,包括5个连续排列的矩形色块。最外侧的首、尾色块的颜色 一个为白色、 一个为黑色,可以用于识别条码的正向或反向,另外还可以作 为校准的依据。中间的3个色块用于识别条码的序列号,单一色块的灰度值 区分为三个等级,即黑、白、灰。针对该条形码,相应的识别装置上可以采用IO个排成一列的LED2构 成LED阵列,将10个LED分为5组,每组包括的2个相邻的LED作为一 个光收发组,每一光收发组用于扫描一个色块,因此在设置LED间的距离 时,使得每一光收发组的LED可以分别对准相应的色块,且一个光收发组 的多个LED的距离越近效果越好。至于光扫描组的划分取决于色块的宽度,如果两个相邻光收发组的距离 足够远,可以将每个光收发组作为一个扫描组。如果距离很近,可以将所有5个光收发组作为一个扫描组,其他的划分,如将相邻的2个、3个或4个 光收发组作为一个扫描组,都是可以的。但是,在本发明中,也不是一对LED收发组必须对应一个条形色块。 图3B是另一个示例,该示例中要识别的条码包括2个色块,LED阵列包括 3个LED,从左至右依次称为LED1、 LED2和LED3。其中在扫描位置,LED1 对准色块l, LED3对应色块2,而LED2位于两个色块的边界位置。此时, 可以将LED、 LED2和LED3编为一个光收组,该光收发组可进行多次扫描, 每次扫描时的发射LED不同,如第1次扫描时LED1打光,LED2 (或LED2 和LED3 )接收,得到的放电时间值记为第1个色块对应的放电时间值;第 2次扫描时LED3打光,LED1 (或LED1和LED2 )接收,得到的放电时间 值记为第2个色块的放电时间值,也可以。本实施例条码扫描的流程包括以下步骤第一步,将条码识别装置的LED阵列对准要扫描的条码,使得条码上 的每一 色块至少对应于一个光收发组;本实施例采用有固定机构底座的架构来实现对准,使得每个色块固定对 准一个光收发组,对准后的位置关系请参照图4。另外可在增加LED数量 的基础上,并通过软件识别处理,达成无固定机构底座的方式。LED装置与条码的垂直距离介于0-5cm之间均可,以小于5mm为佳, 距离太大容易受到外界光线的干扰,且使得可同时扫描的光收发组减少。为 此,可以在LED阵列所在表面的两侧或周边设置突缘,超出LED发光面的 0.5 5mm的距离。第二步,启动扫描后,控制各个扫描组中的所有光收发组依次完成扫描;一般来说,可以将最上端或最下端的光收发组作为第一个开始扫描的光 收发组。每一光收发组的单次扫描过程都是一样的。本实施例中,是先对接 收LED加一#史时间的反向偏压^吏其充电,然后对发射LED加正向偏压4吏其发光并取消在接收LED负极施加的电压,如将其负极变为悬浮,同时正极 电压不变如为低电平,该低电平可以为一基准电压如1/2Vcc。扫描图形的 反射光使接收LED的负极放电,高电平逐渐变化为低电平。检测出接收LED 的放电时间并保存,即完成一次扫描。图5示出了接收LED充放电波形的一个示例。扫描处理部分利用微控 制器控制LED充电、发光和放电,通过识别放电时间来识别所扫描图形反 射光的强度,从而判断出该处的灰度。放电时间越长,则光强度越弱,该处 的灰度越暗,越偏向于黑色;放电时间越短,则光强度越强,该处的灰度越 亮,越偏向于白色。因为色块中各区域色度是一样的,因为一个光收发组只需扫描一次即可 完成对色块的检测。不过将同一光收发组的发射LED和接收LED互换,再 进行一次扫描,或者将若干光收发组对应于一个色块进行至少两次扫描,以 多次扫描得到的放电时间作为判断色块颜色的依据也是可以的。如可以分别 判断,以与基准值差值最小的放电时间作为判断依据,或者以不同结果中较 多数目的判断结果为准。不需要在第一个光收发组放电完成后,再对第二个光收发组中的接收 LED进行充电,这样将延长扫描时间。本实施例在第一个光收发组充电完 成后,即可开始对第二个光收发组的接收LED进行充电,在第一个光收发 组的发射LED打光结束后,第二个光收发组的接收LED已完成充电,可以 立即控制第二个光收发组的发射LED打光。这样可以加快扫描过程。在实际应用中,由于每个LED对应于同一色度的光度放电能力不同, 且其性能在使用过程中也可能发生变化。因而需要检测到的放电时间数据做 校准。基于以上的条码扫描方法和采用的校准方法,实现条码识别的总体流 程可以采用以下两种方式第一种第 一种是采用外接存储装置进行预校准的方式。包括以下步骤A,先外接一存储装置,将LED阵列对标准黑、白和灰色色块进行预打光,存储下各LED对于标准黑、白和灰色的放电时间基准数据;根据LED性能的稳定性,可以每次都进行预打光,记录当前的放电时 间基准值,也可以只在最初使用时进行预打光记录一次基准值,或者,也可 以间隔一段时间进行预打光更新记录的基准值。所谓放电时间基准数据即可以是检测到的原始放电时间,也可以是将其 换算后如取对数等之后的值。B,对要识别的条码进行扫描,检测出各色块对应的接收LED的放电时间;C,先根据首尾色块对应LED的放电时间数据判断出该条码的放入方向;D,将对中间色块对应LED的放电时间邀:据分别与存^f诸的该LED在标 准黑、白和灰色色块覆盖时的放电时间基准数据进行比较,判断各个LED 乂十应色块的颜色;可以将检测的LED放电时间数据与该LED的3种放电时间基准数据相 减,将差值绝对值最小的标准色块的颜色作为该LED对应色块的颜色。也 可以根据3种放电时间基准数据设置第一阈值和第二阈值,将放电时间数据 分为3个分别对应于黑色、白色和灰色的区间,根据检测的放电时间数据所 位于的区间即可获该LED对应色块的颜色。E,将中间色块的颜色按照其正向组合,与各序列号对应的颜色组合进 行匹配,即可识别出所扫描条码的序列号。如果条码中色块只有黑、白两种,则只需先打光给黑、白色块得到相应 的放电时间数据,其它处理和上述步骤可以是一样的,如果设置阈值则只需 设置一个。第二种在另一实施例中,可以通过软件的方式来进行校准动作。此方式无需外 部存储装置,价格低廉,操作使用方便。先解释一下其原理,经研究发现LED具有如下特性白5882325141814224123灰112175355313932447744愛1592384834658516511463以同批生产的IO个LED为例,它们对于标准黑、白和灰色的光度放电 时间值如下表对10个LED的放电时间值取Ln得到的结果如下:以白色为基准去除offset,结果如下0000000000 0£6 0.75 0.83 0.78 0.79 0.77 0.83 0.69 0.63 0,65 1.01 1.06 1291.2 1.19 1.17 1.29 1.06 1.02 1.01由此可见,在两种反射光的情况下4全测到的多个LED的放电时间值经上述取对数处理(可按比例放大)后得到的各个LED的放电时间数据,在 两种反射光下的差值大致相同。所以在后面用首色块对应LED在环境光和 白色块覆盖下的放电时间数据的差值,结合其他色块在环境光下的放电时间 数据,可以推算其他色块在白色块覆盖下的放电时间基准数据。黑色块覆盖 下的放电时间基准数据也同此。另需注意的是,对原始放电时间值取对数如Ln(e为底数)或者loglO均 可,此处所作换算的目的是为将LED之间的差异性缩小而作的一种数学运 算,并不局限于某种特定的运算,只要能保证准确率即可。在取对数后,还 可以将其按比例放大,对于放大倍数的取值没有限定,取到合适的值即可, 对于八位机或十六位机而言是以能得到更多的位码识别为佳。除了对数外, 其它可以达到该效果的运算方式也可以采用。下面给出通过软件校准LED差异的条码识别的流程,包括以下步骤 a)首先通过无光扫描,来判断是否色块已经覆盖到LED上方;123 R S4 33 7^ ^ J4 7 36 4 99 6 62 3 4S32 4 23 4056 2 7Q 7 Q4 4 5在无光扫描的过程中,发射LED无须打光,接收LED直接检测充电后 的放电时间值即可。当有色块覆盖时,由于环境光被遮挡而又没有打光,因 而放电时间值很大。当无色块覆盖时,由于环境光未被遮挡,因而放电时间 值会小很多。因此可以通过一阈值很方便地判断是否有色块覆盖。b) 在确认无色块覆盖的情况下,进行打光扫描,记录下此时即环境光 下各个色块的放电时间值,换算后保存为该LED在环境光下的放电时间数 据;此处换算如可以是对每个值取log后放大50倍,但/f义为示例。c) 再次进行无光扫描,直至检测到有色块覆盖为止;d) 确认有色块覆盖后,进行打光扫描,检测出此时各个色块对应LED 的放电时间值,并按相同方式换算后保存为该LED在有色块覆盖时的放电 时间数据;e) 通过比较首色块及尾色块对应LED的放电时间数据与所述LED在环 境光下的放电时间值的差值,从而推知该色块是正向放入或是反向放入;规格规定,白色块为首色块,黑色块为尾色块。由于环境光下检测的 LED放电时间数据与白色块覆盖下检测的放电时间数据的差异值,会较之 环境光下检测的LED放电时间数据与黑色块覆盖下检测的放电时间数据的 差异值大一些,依据此即可推知正反向。此时对环境光和LED打光的强度 有一些要求,如可以要求环境光中不包含直接照射到LED的直射光,这样 在白色块覆盖下反射光的强度相对于环境光的增力口,比黑色块覆盖下反射光 相对于环境光的减少要更为明显。另外,如果经检测对应于首色块的LED在白色块覆盖下的放电时间小 于对应于尾色块的LED在黑色块覆盖下的放电时间且有足够裕量的话,也 可以直接根据首色块和尾色块对应的LED的放电时间来判断,即放电时间 长的是黑色块,放电时间短的是白色块。从而判断条码的放入方向。f) 分别推算出中间3个色块在白色块、黑色块和灰色块覆盖时的放电时 间基准数据;先计算首色块对应LED在环境光下的放电时间数据与有白色块覆盖时的放电时间数据的差值Cl,以及尾色块位置LED在有黑色块覆盖时的放电 时间数据与环境光下的放电时间数据的差值C2;将记录的中间三个色块对应LED在环境光下的放电时间,各减去差值 CI,保存为该LED在白色块覆盖时的放电时间基准数据。将记录的中间三个色块对应LED在环境光下的放电时间,各加上差值 C2 ,保存为该LED在黑色块覆盖时的放电时间基准数据。取各LED在白色块和黑色块覆盖时的放电时间基准序列的均值,保存 为该LED在灰色块覆盖时的放电时间基准数据。g) 将条码中间色块对应LED在有色块覆盖时得到放电时间数据按正向 组合为放电时间序列,对每一条码序列号,将其对应条码的覆盖下推算的这 些LED的放电时间基准数据组成相应序列,将两个序列中相应的放电时间 数据相减,计算各个差值的平方和;所有27个序列号对应的色块组合及其序列号如图6所示。h) 确定所有序列号计算得到的平方和中的最小值,将该最小值对应的 序列号作为要识别的条码的序列号。本发明在上述实施例的基础上还可以有多种变换方式,根据本发明构思 作出的简单变换也应当属于本发明的保护范围之内。
权利要求1、一种利用发光二极管感光特性来识别条码的装置,其特征在于,包括相互连接的发光二极管阵列和控制处理器,所述发光二极管阵列至少包括排列在一列上的至少2个发光二极管。
2、 如权利要求l所述的装置,其特征在于所迷发光二极管阵列分为一个或多个扫描组,每个扫描组又包括一个或 多个光收发组,每一光收发组至少包括相邻的一发射发光二极管和一接收发 光二极管,且每一扫描组中各个接收发光二极管并联,各个发射发光二极管 的负极并联,分别电连接到所述控制处理器的不同管脚,这些管脚和地之间 连接有电容。
3、 如权利要求2所述的装置,其特征在于所述各个扫描组中相同序号的发光二极管的正极相连,再分别连接到所 述控制处理器上相应的管脚。
4、 如权利要求l所述的装置,其特征在于所述控制处理器采用一微处理器芯片实现,该芯片具有片内RAM。
5、 如权利要求l、 2、 3或4所述的装置,其特征在于 还包括一与所述控制处理器相连的外部非易失性存储器。
6、 如权利要求l所述的装置,其特征在于所述控制处理器包括校准控制单元、放电时间检测单元、数据存储单元 和序列号识别单元,所迷扫描控制单元与放电时间检测单元和校准控制单元 相连,所述放电时间检测单元还与校准控制单元和数据存储单元相连,所述 数据存储单元还与校准控制单元和序列号识别单元相连,所述序列号识别单 元还与校准控制单元或扫描控制单元相连。
7、 如权利要求l所述的装置,其特征在于所述LED阵列所在表面的两侧或周边设置有超出LED发光面0.5~5mm 的距离的突缘。
专利摘要一种利用发光二极管感光特性来识别条码的装置,包括相互连接的发光二极管阵列和控制处理器,所述发光二极管阵列至少包括排列在一列上的至少2个发光二极管。利用LED在接受光照的时候,产生的光电流与光照强弱有关,借由此来识别目标色块的深浅。即LED对不同光强的感测情况不同,从而识别出不同颜色,利用黑白或黑白灰色组成条形码,即可采用本实用新型的装置和方法识别出不同条形码的序列号。该装置电路结构简单,成本低。
文档编号G06K7/10GK201218951SQ20082011062
公开日2009年4月8日 申请日期2008年4月30日 优先权日2008年4月30日
发明者柳 杨, 罗立声 申请人:凌通科技股份有限公司;北京北阳电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1