老古开发网首页
导航:老古开发网首页文章索引索引第2262页文章分类单片机第24页→[条形码的识别原理]
| -文章搜索 - 最新文章 - |

条形码的识别原理

发布时间:2006年6月22日 点击次数:2485
来源:   作者:
 

条形码的识别原理

                /司德平

 一、条形码概述
   
条形码是由美国的N.T.Woodland在1949年首先提出的.近年来,随着计算机应用的不断普及,条形码的应用得到了很大的发展.条形码可以标出商品的生产国、制造厂家、商品名称、生产日期、图书分类号、邮件起止地点、类别、日期等信息,因而在商品流通、图书管理、邮电管理、银行系统等许多领域都得到了广泛的应用.
   
条形码是由宽度不同、反射率不同的条和空,按照一定的编码规则(码制)编制成的,用以表达一组数字或字母符号信息的图形标识符.即条形码是一组粗细不同,按照一定的规则安排间距的平行线条图形.常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)组成的.
   
二、条形码识别系统的组成
   
为了阅读出条形码所代表的信息,需要一套条形码识别系统,它由条形码扫描器、放大整形电路、译码接口电路和计算机系统等部分组成(如图1).

 

图1

   三、条形码的识别原理
   
由于不同颜色的物体,其反射的可见光的波长不同,白色物体能反射各种波长的可见光,黑色物体则吸收各种波长的可见光,所以当条形码扫描器光源发出的光经光阑及凸透镜1后,照射到黑白相间的条形码上时,反射光经凸透镜2聚焦后,照射到光电转换器上,于是光电转换器接收到与白条和黑条相应的强弱不同的反射光信号,并转换成相应的电 信号输出到放大整形电路.白条、黑条的宽度不同,相应的电信号持续时间长短也不同.但是,由光电转换器输出的与条形码的条和空相应的电信号一般仅10mV左右,不能直接使用,因而先要将光电转换器输出的电信号送放大器放大.放大后的电信号仍然是一个模拟电信号,为了避免由条形码中的疵点和污点导致错误信号,在放大电路后需加一整形电路,把模拟信号转换成数字电信号,以便计算机系统能准确判读.整形电路的脉冲数字信号 经译码器译成数字、字符信息.它通过识别起始、终止字符来判别出条形码符号的码制及扫描方向;通过测量脉冲数字电信号0、1的数目来判别出条和空的数目.通过测量0、1信号持续的时间来判别条和空的宽度.这样便得到了被辩读的条形码符号的条和空的数目及相应的宽度和所用码制,根据码制所对应的编码规则,便可将条形符号换成相应的数字、字符信息,通过接口电路送给计算机系统进行数据处理与管理,便完成了条形码辨读的全过程.


欢迎进入老古论坛进行讨论
[单片机] 相关文章:
单片机开发调试应注意的问题
简介:
单片机开发调试应注意的问题   1、使用总线不外引的单片机     ·是最正统的单片机使用模式     ·符合小型、简单、可靠、廉价的单片机设计初衷     ·总线封闭的产品最可靠   2、使用单片机C语言编程     * C语言是简洁、高效、而又最贴近硬件的高级编程语言     * 90年代初单片机C语言就已成熟为专业水平的高级语言,不应再有顾虑     * 当前厂商在推出新的单片机产品时纷纷配套C语言编译器   3、使用中、高档的单片机仿真工具     * 只有中、高档仿......

AT89C51与字符型液晶模块16x2联接的C语言源程序
[转载]10种软件滤波方法
具备跳号跳频和跳址的nrf905的C51演示程序
3310显示屏测试c程序
 
下一个:[另类其他]十进制,八进制,十六进制,二进制相互转换大全!
简介:
'' 用途:将十进制转化为二进制 '' 输入:Dec(十进制数) '' 输入数据类型:Long '' 输出:DEC_to_BIN(二进制数) '' 输出数据类型:String '' 输入的最大数为2147483647,输出最大数为1111111111111111111111111111111(31个1) Public Function DEC_to_BIN(Dec As Long) As String DEC_to_BIN = "" ......

上一个:[经验总结]C51编程经验三则

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:30分钟 执行时间:47毫秒