您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页基于单片机的自动存取柜的设计

基于单片机的自动存取柜的设计

来源:意榕旅游网
 -

毕业设计(论 文)

基于单片机的自动存取柜的设计

系 别 专 业 班级学号 姓 名 指导教师

自动化工程系 测控技术与仪器

5060806 雷宏 宋爱娟

2010年 6 月 15 日

9

-

基于单片机的自动存取柜的设计

摘 要

本文介绍了自动存取柜控制系统的设计与实现方法。本课题由ATS52单片机构成核心控制系统,整个系统由主控部分、键盘显示和条码扫描部分、执行部分三部分组成,通过密码的核对完成自动存包取包的过程。

第一部分:CPU核心控制部分,由单片机ATS52、复位电路、时钟电路等构成,是整个系统的核心。

第二部分:键盘显示和条码扫描部分,该部分通过按下存包键以及对条码数据进行扫描来完成存包取包过程,并且通过液晶(LCD)显示各种提示信息。

第三部分:执行部分,该部分通过ATS52的并行口扩展两片8255A芯片,并通过8255A控制16个锁来完成开门关门动作。

软件部分主要是密码产生过程,即把存包时刻作为密码。而密码的产生、核对过程就对应存包、取包的过程。

本系统具有如下特色:

经济实用、操作简单且便于安装。能产生一组密码,密码使用一次有效。利用软件产生密码而不是硬件,使得硬件更为简洁、可靠、稳定。

关键词:自动存取柜,ATS52单片机,液晶显示,密码

I

-

The design based on minicomputer for the roboticized access tank

Author:Lei Hong

Tutor:Songaijuan

Abstract

This article describes the automatic control system access cabinet design and implementation. The issue posed by the ATS52 microcontroller core control system, the entire system from the master part, the keyboard display and bar code scanner part, the operative part of three parts, the completion of checking by the password automatically saved packet access packet.

Part I: CPU core control part, by the MCU ATS52, reset circuit, clock circuit, etc., and is the core of the system.

Part II: the keyboard display and bar code scanner part, the part of the package by pressing the save button and the scanned bar code data packet access package to complete the deposit process, and through the liquid crystal (LCD) display a variety of prompts.

Part III: the operative part, the part of the parallel port extension through ATS52 two 8255A chips, and 16 through the 8255A control door lock to complete the closing action.

Software component is the password generating process, that is, to save time package as

the password. The password generation, the reconciliation process on the corresponding deposit bag, takes packet.

This system has the following characteristics:

Economical and practical, simple and easy to install. Can generate a password, the password to use one effectively. Password generated by software rather than hardware, making hardware more concise, reliable and stable.

Key words: Automatic Access Tank, ATS52 Single chip, LCD, the password

II

-

目 录

1 绪论 ...................................................................................................................................... 1 自动存取柜的设计背景及目的 .......................................................................................... 1 国内外研究状况和相关领域中已有的研究成果 .............................................................. 1 课题的研究方法及研究内容 .............................................................................................. 2 论文构成 .............................................................................................................................. 3 2 系统总体方案设计与选择的论证 ...................................................................................... 4

系统工作原理介绍 .............................................................................................................. 4 系统采用的各个部件及其功能介绍 .................................................................................. 4

系统的输入部分 ......................................................................................................................................................4

系统的输出部分 ......................................................................................................................................................4 系统的输入/输出部分 .............................................................................................................................................5 扩展芯片 ..................................................................................................................................................................5

系统工作原理框图 .............................................................................................................. 5 选择该系统方案的论证 ...................................................................................................... 6

主控单元——单片机ATS52介绍 .....................................................................................................................6

显示模块——液晶显示器1602的介绍 .............................................................................................................. 10 扩展芯片——8255A并行I/O口扩展 ................................................................................................................. 11 条码设备——条码打印机与条码扫描器 ............................................................................................................ 14 时钟芯片DS1302 .................................................................................................................................................. 16 外部存储器CAT24C02(2K) ............................................................................................................................ 18 门磁的介绍 ............................................................................................................................................................ 20

3 系统硬件部分的设计 ........................................................................................................ 22

硬件电路设计的原则 ........................................................................................................ 22 系统各部分电路原理 ........................................................................................................ 22

单片机的最小系统 ................................................................................................................................................ 22

控制锁电路单元 .................................................................................................................................................... 25 蜂鸣器报警电路 .................................................................................................................................................... 26 液晶显示1602与单片机的连接 .......................................................................................................................... 26 打印机GP16与单片机的连接 ............................................................................................................................. 27 条码扫描器的接口 ................................................................................................................................................ 28 单片机与DS1302、AT24C02的连接 .................................................................................................................. 29

4 系统软件部分的设计 ........................................................................................................ 31

系统典型部分软件设计介绍 ............................................................................................ 31

液晶显示模块 ........................................................................................................................................................ 31 打印机GP16模块 ................................................................................................................................................. 31 基于PS/2口的条码扫描器 ................................................................................................................................... 32

系统软件流程图 ................................................................................................................ 33

存包流程图 ............................................................................................................................................................ 33 读取条码数据流程图 ............................................................................................................................................ 36 取包流程图 ............................................................................................................................................................ 36

结 论 .................................................................................................................................. 38 致 谢 .................................................................................................................................. 39 参考文献 .................................................................................................................................. 40 附 录 .................................................................................................................................. 41

III

-

附录A 系统硬件原理图 ................................................................................................ 41 附录B 英文附录文献 .................................................................................................... 43 附录C 英文文献参考译文 ............................................................................................ 47

IV

-

1 绪论

自动存取柜的设计背景及目的

近年来,随着生活水平的提高,人们对于社会消费品的质量和数量的要求以及对社 会的服务质量也在逐渐增加。为了更好的为广大的顾客服务,在一些商场、影院(尤其是超市)等公共场合通常有电脑控制的自动存取柜,来方便广大的顾客朋友们。各种各样的自动存取柜也陆续出的产生了。它具有功能实用、操作简便、安全可靠、抗干扰性强等特点,能够更好的服务于不同市场的广大群众。顾客可以根据简明清晰的操作说明自行的完成取物品的工作,自助式存取可以避免开放式存包带来的不必要的纠纷,又可以节约人员开支,达到减员增效的目的。同时,存包可以顾客的双手,使顾客开放双手,更方便的进行购物。

国内外研究状况和相关领域中已有的研究成果

“自动存取柜”就是让使用者可以实现自助式储存物品,原产日本,后来在广泛应用。1999年开始在中国出现并逐步广泛应用。目前主要分为机械型和电脑型两大系列。主要规格分为:10格、12格、15格、18格、24格。

下面介绍几种常见的自动存取柜: (1)投币式机械自动存取柜

这种存取柜是1999年由深圳亿家福公司最先引入中国的。目前使用范围有:超市、图书馆、海滨浴场等。

(2)投币式收费型存取柜

用于车站、码头、公共场合募捐旅游景点等。这些场所一般使用18格或15格。 (3)机设条码多功能电子存取柜

用于超市、卖场、新华书店等公共场合。这些场所一般使用10格或15格。 (4)傻瓜型非接触卡长效存取柜

用于小区信报管理、员工更衣室、租赁柜等,也用于有人员职守的公共场合,如:网吧、旅馆、浴池。这些场所一般使用24格或36格。

(5)一次有效扫卡存取柜

1

-

利用员工卡扫描存取、利用学生卡扫描存取、利用会员卡扫描存取。这些场所一般使用24格。

(6)异型卡、钥匙型卡存取柜

用于洗浴更衣、桑拿更衣、员工更衣等。这些场所一般使用18格或24格。 课题的研究方法及研究内容

本次设计以基于单片机的超市电子自动条码存取柜为代表,这种自动存取柜免去了工作人员的辛劳,存包的顾客只要按一下小键盘上的“存”键,它就会自动打印出带有密码及相应柜子号的凭条,当顾客拿出凭条时,柜子会自动弹开,顾客可以将要存放的东西放到里面,关上柜门后,只有凭借顾客拿的凭条上的密码才能打开此柜门。这种自动存取柜的出现,显然既方便了顾客,又节省了超市的人力物力。

这种存取柜具备普通密码型的全部功能,并增加了条码的打印和识别功能,用户开箱取物时只需将条码纸在条码扫描区内进行扫描,即可完成取物操作,方便快捷,安全性高。条形码纸的条码通过加密形成唯一性的密码,避免被偷窥密码的可能性,此条码纸一经使用就会失效,使用安全成倍提高;快速存取:索取时自动打印条码,取物时快速的扫描识别。简单操作:只需按“存”就可打印条码纸,读取条码只需扫描一下。

该存取柜系统主要由柜体、箱格和主控单元三部分组成,主控单元包含单片机、液晶显示屏、微型打印机、操作键盘和扫码区。单片机控制箱柜存取操作,安全方便。液晶显示屏可以显示寄存信息,如:存物箱号、箱满提示、扫码错误提示、时间等信息,帮助用户自助式完成存取操作。箱柜表面经除锈、磷化,并采用先进静电粉体涂装,外表美观,质感高雅。产品结构性能稳定、安全牢靠,具有防撬功能。

顾客需要存包的时候,可以自行到存包柜前按“存”键,单片机接收到一脉冲信号,并通过系统I/O口发出相应的信号,控制锁柜门的电磁阀将一空箱打开,顾客即可存包并将柜门关上。当顾客需要取包时,只要将条码放置到条形码扫描器前方,条码扫描器采集到条码信息输出相应的高低电平信号传给单片机,系统比较密码一致后,发出开箱信号至电磁阀使柜门打开,顾客即可将包取出。

条码型存取柜系统具有较高的自动化程度,是以单片机为核心,自动控制柜门的打开,并通过条码技术实施红外线检测开门。关门后通过条码打印机打印条码,并自动切纸;有存包请求时显示无物的箱体号。并具有断电保护功能,通过软件检测箱内是否有物品,并报警。在现实生活中有着积极的作用。

2

-

论文构成

论文包括绪论,论文主体以及结论三部分。其中绪论部分包括毕业设计的背景及目的;国内外研究状况和相关领域中已有的研究成果;课题的研究方法及研究内容以及论文构成。论文的主体部分包括论文总体方案设计与选择的论证;论文各部分(包括硬件与软件)的设计计算;试验方案设计的可行性、有效性以及试验数据的处理及分析;对本研究内容及成果较全面、客观的理论阐述,即指出本研究内容中的创新、改进与实际应用之处。结论部分阐述自己的新的见解及其意义和作用。

3

-

2 系统总体方案设计与选择的论证

系统工作原理介绍

该系统是用来为顾客在超市购物存包,取包过程提供便利的一个平台。顾客存包时,首先把开启的箱门全部关上,按下“存包”键,此时,系统打印条码,顾客取出条码的同时,对应的箱门自动开启,存包后,关闭箱门。取包时,先把所有开启的箱门关上,将条码放在扫描区,如果条码信息与系统存储的密码一致,对应的箱门开启,取包后,关闭箱门。

系统采用的各个部件及其功能介绍

本系统采用ATMEL公司的增强型51系列单片机ATS52作为整个系统的运算与控制部件,负责与外部设备与存储器交换数据,响应外部的中断请求等。外部设备及芯片包括输入部分、输出部分、输入/输出部分以及连接单片机与外设的扩展芯片。 系统的输入部分

1)按键输入,此按键作为存包键,与单片机的INT0相连,顾客按此键,便构成一个中断请求,单片机响应此请求后,通过程序控制箱门的打开。

2)门磁传感器输入,此输入作为状态的输入,指示箱门打开或者关闭。

3)条码扫描输入,该部分作为识别开箱门的部件,当顾客将条码对准扫描口时,对应的箱门会自动打开。 系统的输出部分

1)液晶显示部件,型号:1602。当单片机检测到所有的门磁传感器状态均表明箱门闭合且有物时,液晶显示“FULL(箱满)”字样;当有至少一个箱门闭合且无物时,液晶显示实时的时刻;当有存包请求时,若有空箱,则液晶显示器显示空箱号码;在扫描条码后,若条码数据与存储器中的密码核对不一致,则显示出错信息“WRONG(错误)”。

2)微型打印机,型号:GP16。当顾客按存包键以后,单片机将DS1302记录的实

4

-

时时刻做成密码,然后打印机将密码及其相应的柜号打印成条码。

3)继电器的输出,当条码信息与单片机存储的密码核对一致时,单片机控制继电器动作,进而控制电控锁的开启。 系统的输入/输出部分

1)实时时钟芯片DS1302。读操作:该芯片为系统工作提供实时的时刻,并且在有存包请求时,单片机把动作时刻的信息存入到外部存储器中,同时还要送到打印机打印出来。写操作:单片机要将控制信息写到DS1302的控制字中,用来控制DS1302的工作方式。

2)外部存储器芯片AT24C02。该存储器用来存储由柜号和时刻信息构成的二维数组信息,单片机与存储器之间的操作分为读操作和写操作。 扩展芯片

8255A可编程并行口扩展芯片,该芯片连接了电控锁以及门磁传感器。将PA口设置为输出状态,输出的低电平控制开电控锁;将PB口设置为输入状态,读入门磁传感器指示的高低电平。 系统工作原理框图

图 系统的硬件结构框图

5

-

选择该系统方案的论证

主控单元——单片机ATS52介绍

ATS52单片机是AT系列中的增强型产品,采用了ATMEL公司的技术领先的Flash存储器,是低功耗、高性能、采用CMOS工艺制造的8位单片机。

1、ATS52单片机的主要特性 (1)8位字长的CPU;

(2)可在线ISP编程的8KB片内Flash存储器; (3)256B的片内数据存储器;

(4)可编程的32根I/O口线(P0~P3); (5)~电压操作范围;

(6)3个可编程16位定时/计数器; (7)双数据指针DPTR0和DPTR1;

(8)具有8个中断源、6个中断矢量、2级优先权的中断系统; (9)可在“空闲”和“掉电”两种低功耗方式运行; (10)3级程序锁定位;

(11)全双工的UART串行通信口; (12)1个看门狗定时器WDT; (13)具有断电标志位POF;

(14)振荡器和时钟电路的全静态工作频率为0~30MHz; (15)与MCS-51单片机产品完全兼容。 2、单片机的封装以及引脚图

ATS52具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。其中,PDIP(塑料双列直插)封装的芯片使用方便,可以灵活插拔,因此最为常用。如下图所示为PDIP封装的ATS52芯片引脚图。

6

-

图 ATS52 芯片引脚图

3、单片机各个引脚的功能介绍

ATS52与其他PDIP封装的51单片机芯片一样,具有40个引脚。下面介绍各引脚的功能。

VCC:电源正极,一般为+5V。 GND:电源地。

P0:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL 逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器 时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash 编程时,P0口也用来接收指令字节;在程序校验时输出指令字节。程序校验时,需要 外部上拉电阻。

P1:P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个 TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口 使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,和分别作定时器/计数器T2的外部计数输入(T2)和定时器/计数

7

-

器T2的触发输入(T2EX),具体见下表。在flash编程和校验时,P1口接收低 8位地址字节。

表 P1接口第二功能

引脚号 第二功能 T2(定时器/计数器T2的外部计数输入),时钟输出 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) MOSI(在系统编程用) MISO(在系统编程用) SCK(在系统编程用) P2:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高8位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为ATS52特殊功能(第二功能)使用,见表。在flash编程和校验时,P3口也接收一些控制信号。

8

-

表 P3口的第二功能

引脚号 第二功能 RXD(串行输入) TXD(串行输出) INT0(外部中断0) INT1(外部中断1) T0(定时/计数器0外部输入) T1(定时/计数器1外部输入) WR(外部数据存储器写选通) RD(外部数据存储器读选通) RST:复位输入。晶振工作时,RST脚持续两个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。

ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1” ,ALE操作将无效。这一位置“1” ,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。

PSEN:外部程序存储器选通信号。当ATS52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。

EA/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存

储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12V VPP电压。

XTAL1和XTAL2:外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。

9

-

显示模块——液晶显示器1602的介绍

液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在各类仪表和低功耗系统中得到广泛的应用。

根据显示内容可以分为字符型液晶,图形液晶。根据显示容量又可以分为单行16字,2行16字,两行20字等等。

2行16字的字符型液晶模块是一种通用模块,与数码管相比该模块有如下优点: (1)位数多,可显示32位,32个数码管体积相当庞大。 (2)显示内容丰富,可显示所有数字和大、小写字母。

(3)程序简单,如果用数码管动态显示,会占用很多时间来刷新显示,而1602自

动完成此功能。

图 1602模块的实物图

1602采用标准的16脚接口,其中:(模块背面有标注) 第1脚:VSS为地电源 第2脚:VDD接5V正电源

第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。

第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。 第6脚:E端为使能端,当E端由高电平跳变为低电平时,液晶模块执行命令。 第7~14脚:D0~D7为8位双向数据线。 第15~16脚:空脚(有的用来接背光)。

1602液晶模块内部的字符发生存储器(CGROM)已经存储了不同的点阵字符图形,

10

-

这些字符有,阿拉伯数字、英文字母的大小写、常用的符号和日文假名等,每一个字符都有一个固定的代码,其中数字与字母同ASCII码兼容。其内部还有自定义字符 (CGRAM),可用以存储自己定义的字符。 扩展芯片——8255A并行I/O口扩展

8255A是Intel公司生产的可编程输入输出接口芯片,具有3个8位的并行I/O接口,3种工作方式,可通过程序改变其功能,可以与单片机直接相连,因而使用灵活方便,通用性好,可作为单片机与多种外围设备连接时的中间接口电路。8255A的引脚图如图所示。

1、8255A各引脚功能

8255A共有40个引脚,双列直插式封装的引脚功能如下。

D7~D0:三态双向数据线,与单片机数据总线连接,用来传送数据信息。 CS:片选信号线,低电平有效,表示芯片被选中。 RD:读出信号线,低电平有效,控制数据的读出。 WR:写入信号线,低电平有效,控制数据的写入。 PA0~PA7:端口A的输入/输出线。 PB0~PB7:端口B的输入/输出线。 PC0~PC7:端口C的输入/输出线。

RESET:复位信号线。若RESET=1,8255复位。复位状态控制寄存器被清除,A,B,C口被置为输入方式。

A1~A0:地址线,用来选择8255A内部端口。

11

-

图 8255A引脚图

2、8255A内部各部分功能

8255A的内部包括3个并行数据输入/输出端口,2个工作方式控制电路,一个读/ 写控制逻辑电路和8位总线缓冲器。各部分功能概括如下。 (1)端口A、B、C

8255A有3个8位并行口,即A、B和C,都可以选择作为输入或输出工作方式, 每个并行口都具有一个8位数据输出锁存器/缓冲器,一个8位数据输入锁存器。但在功 能和结构上有些差异。

A口、B口作为数据输入/输出端口,C口既可以作为输入/输出端口使用,又可以 在软件的控制下,分为两个4位的端口,作为A口、B口选通方式操作时的控制信号。 (2)工作方式控制电路

工作方式控制电路包括A组控制电路和B组控制电路。两组控制电路共用一个控 制命令寄存器,用来接收CPU发来的控制字,以决定两组端口的工作方式,也可以根 据控制字的要求对C口按位清0或者按位置1。

A组控制电路用来控制A口和C口的上半部分(PC7~PC4)。B组控制电路用来控 制B口和C口的下半部分(PC3~PC0)。

(3)数据总线缓冲器

12

-

数据总线缓冲器是一个三态双向8位缓冲器,作为8255A与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。

(4)读/写控制逻辑电路

读/写控制逻辑电路接收CPU发来的控制信号RD,WR,RESET以及地址信号A1~A0等,然后根据控制信号的要求,将端口数据读出,送到CPU;或者将CPU送来的数据写入端口。各端口的工作状态如下表所示。

表 8255A端口的操作状态

端口地址选择 CS A1 0 0 1 0(选中) 0 0 1 1 1 X A0 0 1 0 0 1 0 1 X 所选端口 A口 B口 C口 A口 B口 C口 控制寄存器 未选中 操作选择 RD 0 0 0 1 1 1 1 X WR 1 1 1 0 0 0 0 X CPU操作功能 读A口内容 读B口内容 读C口内容 写入A口 写入B口 写入C口 写入控制字 D0~D7三态 3、8255A的工作方式

8255A有3种基本工作方式。方式0:基本输入输出。方式1:选通输入输出。方式2:双向传送。

(1)工作方式0

基本输入/输出方式。这种方式不需要选通信号。PA,PB和PC中任一端口都可以通过方式控制字设定为输入或输出。 (2)工作方式1

工作方式1是选通输入/输出工作方式。该方式时3个端口分为两组,即A组和B组。每一组包括一个8位数据端口和一个4位的控制/状态端口。每一个8位数据端口均可设置为输入或者输出,输入输出均可锁存。4位端口作为8位数据端口的控制/状态信号端口。A组包括A口和PC7~PC4,A口可以由编程设定为输入或输出,PC7~PC4作为输入/输出操作的选通信号和应答信号。B组包括B口和PC3~PC0,用法同A组。

13

-

(3)工作方式2

只有A口可以工作于方式2。按照方式2工作时,A口成为双向数据总线端口,既可以发送数据,又可以接收数据。此时C口有5条线被固定为A口与外设之间的联络信号线。C口余下的3条线可以作为B口方式1下的联络线;也可以和B口一起作为方式0的I/O线。

条码设备——条码打印机与条码扫描器

1、条形码知识 (1)条形码介绍:

条形码是由美国的在1949年首先提出的。近年来,随着计算机应用的不断普及,条形码的应用得到了很大的发展。条形码可以记录很多信息,像商品的生产国、制造厂家、商品名称、生产日期、图书分类号、邮件起止地点、类别、日期等信息,因而在商品流通、图书管理、邮电管理、银行系统等许多领域得到了广泛的应用。

条形码是由宽度不同、反射率不同的条和空,按照一定的编码规则(码制)编制成的,用以表达一组数字或字母符号信息的图形标识符。即条形码是一组粗细不同,按照一定规则安排间距的平行线条图形。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)组成的。

(2)条形码识别系统的组成

为了阅读出条形码所代表的信息,需要一套条形码识别系统,它由条形码扫描器、放大整形电路、译码接口电路和计算机系统等部分组成。

(3)条形码的识别原理

由于不同颜色的物体,其反射的可见光的波长不同,白色物体反射各种波长的可见光,黑色物体则吸收各种波长的可见光,所以当条形码扫描器光源发出的光经光阑及凸透镜1后,照射到黑白相间的条形码上时,反射光经凸透镜2聚焦后,照射到光电转换器上,于是光电转换器接收到与白条和黑条相应的强弱不同的反射光信号,并转换成相应的电信号输出到放大整形电路。白条、黑条的宽度不同,相应的电信号持续时间长短也不同。但是,由光电转换器输出的与条形码的条和空相应的电信号一般仅10mV左右,不能直接使用,因而先要将光电转换器输出的电信号送放大器放大。放大后的电信号仍然是一个模拟电信号,为了避免由条形码中的疵点和污点导致错误信号,在放大电路后需加一整形电路,把模拟信号转换成数字电信号,以便计算机系统能准确判读。

14

-

整形电路的脉冲数字信号经译码器译成数字、字符信息。它通过识别起始、终止字符来判别出条形码符号的码制及扫描方向;通过测量脉冲数字电信号0、1的数目来判别出条和空的数目。通过测量0、1信号持续的时间来判别条和空的宽度。这样便得到了被辩读的条形码符号的条和空的数目及相应的宽度和所用码制,根据码制所对应的编码规则,便可将条形符号换成相应的数字、字符信息,通过接口电路送给计算机系统进行数据处理与管理,便完成了条形码辩读的全过程。

(4)条形编码方式(本系统用到一维条码)

一维条码:有225中以上的一维条码,每种一维条码都有自己的一套编码规格,规定每个字母(可能是文字或数字或文数字)是由几个线条(Bar)及几个空白(Space)组成,以及字母的排列。一般叫流行的一维条码有39码、EAN码、UPC码、128码,以及专门用于书刊管理的ISBN、ISSN等。

2、条码扫描器

条码扫描器是计算机系统的标准输入设备之一,它将扫描到的图像信息转换为数字信号,继而转化为与计算机兼容的数据,而且它与计算机的接口可以直接识别,无需做额外的接口设计。尽管可与PC机简单直接相连,但在一些较小系统中这样设计也是不经济的。举例说明,像自动存包柜系统中设置条码扫描器,如果在每一个存包柜配一台PC机来完成条码数据的读取和柜子的开关的话,那由于PC机价格高、体积大,这样组成的系统一方面成本高,另一方面要设计PC机的安放位置。在这种情况下,选用价格低、可靠性好的单片机来完成这台PC机的功能就具有较大的优越性。但是对于单片机系统而言,由于没有现成的接口处理器,尤其是对PS/2口,8位单片机没有键盘口的IP核,因此就必须自己设计接口,利用单片机现有的资源,模拟接口处理,实现通信。系统的设计包括两个主要部分——硬件连接的设计和软件协议的仿真。其中软件协议的实现是核心,其本质是在硬件接口设计好的情况下,实现单片机系统与条码阅读器的一个广义上的通信。

条码扫描器的插头为键盘圆形插针。其中只有四个脚有意义,它们分别是Clock(时钟脚)、Data(数据脚)、+5V(电源脚)和Ground(电源地)。在PS/2键盘与PC机的物理连接上只要保证这四根线一一对应就可以。PS/2设备靠PC的PS/2端口提供+5V电源,另外两个脚Clock(时钟脚)和Data(数据脚)都是集电极开路的,所以必须接大阻值的上拉电阻。它们平时保持高电平,有输出时才被拉到低电平,之后自动上浮到高电平。

15

-

表 PS/2端口定义

1 2 3 4 5 6 DATA n/c GND VCC CLK n/c 数据信号端 未定义 电源地 +5V电源 时钟信号端 未定义 3、条码打印机

单片机在工业控制、智能仪器和机电一体化领域中得到越来越广泛的应用,它的输出设备常常使用打印机,以便将测量、运算结果保存下来。GP16智能打印机是通用的微型打印机,它是由MODEL150I型机械点阵打印头机芯和控制器二部分组成。机芯部分包括微型电机、打针驱动部件、色带传动机构等;控制器配有微处理器接收和执行主机送来的命令,通过控制口和驱动电路,实现对打印机械动作的控制。因此,GP16打印机除了具有体积小、价格低、可靠性高、通用性强、打印灵活、与主机接口方便等特点外,还具有很强的处理功能。

GP16打印机可接受主机多种命令,相应地打印出ASCII字符(每行十六个字符)、数据、图标、汉字等。

打印机接口各信号功能如下:

I/O0~I/O7:双向三态数据总线,是CPU与GP16打印机之间命令、状态和数据信息传输线。

CS:设备选择线。

RD、WR:读、写信号线。

BUSY:打印机状态输出,高电平表示GP16处于忙状态,可供CPU查询或作中断请求线。

GP16控制器具有数据锁存器,与单片机连接十分方便。 时钟芯片DS1302

DS1302是美国Dallas公司推出的一种高性能、低功耗、带RAM的实时时钟芯片。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/备用电源双电源引

16

-

脚,同时提供了对电源进行涓细电流充电的能力。

1、DS1302的主要特点: ·工作电压为~。

·可对年、月、日、星期、时、分、秒进行计时,闰年补偿,有效至2100年。 ·可采用12h或24h方式计时。

·可采用突发方式一次传送多个字节的时钟信号或RAM数据。 ·内部有一个31×8位的用于临时存放数据的RAM寄存器。

·采用双电源(主电源和备用电源)供电,可设置备用电源充电方式,并且可以关 闭充电功能,同时提供了对备用电源进行涓细电流充电的能力。 ·采用SPI三线接口与CPU进行通信。 ·采用普通晶振。

2、DS1302的引脚及功能: DS1302引脚图如下所示。

图 DS1302引脚图

VCC1接后备电源,VCC2接主电源:在主电源关闭的情况下,也能保持时钟的连续运行。 DS1302由VCC1或VCC2两者中的较大者供电。当VCC2>VCC1+时,VCC2给DS1302供电。当VCC2X1和X2:外接晶振,为芯片提供计时脉冲。

RST:复位/片选线。

I/O:串行数据输入输出端(双向)。 SCLK:串行时钟输入端。 3、DS1302的控制字及寄存器

通过对DS1302寄存器的控制字进行读写操作完成对DS1302的读写。 (1)DS1302的控制字

DS1302的控制字如图所示。控制字的最高有效位(位7)必须是逻辑1,如果

17

-

为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1表示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。

1 RAM CK A4 A3 A2 A1 A0 R/W 图 DS1302的控制字

在DS1302中,通过把RST置高电平以启动所有的数据传送。RST有两种功能:首 先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,利用RST可终止单字节或多字节数据的传送。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中置RST为低电平,则会终止此次数据传送,并且

RST必须保持低电平。使I/O引脚变为高阻态。上电运行时,在VCC≥之前,只有在SCLK

为低电平时,才能将RST置为高电平。

在控制字输入后的下一个SCLK时钟的上升沿时,数据从低位(即0位)开始写入DS1302。同样,在紧跟8位的控制字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。

(2)寄存器

DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,数据格式为BCD 码。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;另一个为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31B,命令控制字为FEH(写)、FFH(读)。 外部存储器CAT24C02(2K)

CAT24C02是集E2PROM存储器,复位微控制器和看门狗定时器三种流行功能于一 体的芯片。CAT24C02是I2C串行CMOS E2PROM器件。采用CMOS工艺大大降低了器件的功耗。CAT24C02的另一特点是16字节的页写缓冲区,提供8脚DIP和SOIC封装。CAT24C02的复位功能和看门狗定时器功能保证系统出现故障的时候能给CPU一个

18

-

复位信号。CAT24C02的2脚输出低电平复位信号,7脚输出高电平复位信号。

1、CAT24C02的特性

(1)数据线上的看门狗定时器(仅对CAT24C021) (2)可编程复位门槛电平

(3)高数据传送速率为400KHz和I2C总线兼容 (4)至6V的工作电压 (5)低功耗CMOS工艺 (6)16字节页写缓冲区 (7)片内防误擦除写保护 (8)高低电平复位信号输出

——精确的电源电压监视器

——可选择5V、和3V的复位门槛电平 (9)100万次擦写周期 (10)数据保存可长达100年 (11)8脚DIP或SOIC封装

(12)商业级、工业级和汽车温度范围 2、绝对最大参数

工作温度: -55℃~125℃ 贮存温度: -65℃~15℃ 各管脚承受对地电压: ~VCC+ VCC对地电压范围: ~ 最大功耗: 管脚焊接温度(10S): 300℃ 输出短路电流: 100mA 3、管脚图及其功能

19

-

图 AT24C02管脚图

A0、A1、A2:

这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空那个时默认值为0

WP:写保护

将该管脚接VCC,E2PROM就实现写保护(只读)。将该管脚接地或悬空,可以对器件进行读写操作。

SCL:串行时钟脚

串行输入输出数据时,该脚用于输入时钟。

RESET/RESET:复位I/O口

该脚用来启动复位输入。该脚强制复位的条件下,芯片保持复位状态。RESET脚需下拉,RESET脚需上拉。

SDA:串行数据/地址输入脚

双向串行数据/地址脚,用来输入输出数据。和其他的I2C总线芯片一样,该脚为射(漏)极开路输出,需接上拉电阻。在CAT24C021中,该脚也用作看门狗输出。 门磁的介绍

门磁是用来探测门、窗、抽屉等是否被非法打开或移动。门磁系统是一种安全报警 系统,它由两部分组成:较小的部件为永磁体,内部有一块永久磁铁,用来产生恒定的磁场,较大的是门磁主体,它内部有一个常开型的干簧管,当永磁体和干簧管靠得很近时(小于5毫米),门磁传感器处于工作守候状态,当永磁体离开干簧管一定距离后,处于常开状态。磁铁和干簧管分别安装在门框和门扇里,基本上都是嵌入式安装。有线门磁需要将其输出信号接入主机的输入端。 本次设计选用有线门磁LS—Q39

门磁特性:(1)具有防火ABS阻燃外壳 (2)连接方式:常开或常闭 (3)额定电流(mA):100

20

-

(4)额定电压(VDC):100 (5)开启距离(mm):≥15 ≤25 (6)额定功率(W):20

21

-

3 系统硬件部分的设计

硬件电路设计的原则

一般在设计系统硬件电路时应遵循以下原则:

(1)尽可能选择标准化、模块化的典型电路,且符合单片机应用系统的常规用法; (2)系统配置及扩展标准必须充分满足系统的功能要求,并留有余地,以利于系统的二次开发;

(3)硬件结构应结合应用程序设计一并考虑,软件能实现的功能尽可能由软件来完成,以简化硬件结构;

(4)系统中相关的器件要尽可能做到性能匹配; (5)单片机外接电路较多时,必须考虑其驱动能力; (6)可靠性及抗干扰设计是硬件设计不可缺少的一部分; (7)TTL电路未引用引脚的处理;

(8)工艺设计,包括机架机箱、面板配线、接插件等,必须考虑安装、调试、维护的方便。

系统各部分电路原理 单片机的最小系统

单片机基本应用系统没有扩展的程序存储器ROM、数据存储器RAM、扩展的I/O接口等扩展部件,除单片机外仅配置了电源、时钟电路、输入/输出设备和复位电路,是最小的单片机应用系统,如图所示。

22

-

图 最小的单片机应用系统

图 单片机最小系统

1、单片机的供电电源

单片机的供电电源为+5V,但是生活用电是交流220V,因此,需要将220V的交流电 转换为+5V的直流电,转换过程如下:

先将220V交流电变成低压交流电,再用整流电路转换成脉动的直流电,最后再用 滤波电路滤除脉动直流电中的交流成分后才能得到直流电。流程如下:

变压 整流 滤波 不稳定的直流

稳压 稳定的直流

变压就是用铁芯变压器将电压变低即可。整流是利用二极管的单向导电性,将低压 交流电变成单向脉动的直流电。这又可以分成半波整流,全波整流和全波桥式整流和倍

23

-

波整流。滤波就是将整流出来的大小变化的直流变成平滑的直流电的过程。滤波有电容滤波,电感滤波,LC(L型滤波)型滤波以及RC滤波等。

图 单片机供电电源硬件电路图

该电路的工作原理如下:

从图上看变压器输入端经过一个保险连接电源插头,假如变压器或后面的电路发生 短路,保险内的金属丝就会因大电流引发的高温熔化后断开。

变压器后面由4个二极管组成一个桥式整流电路,整流后就得到一个电压波动很大 的直流电源,所以在这里接一个330uF/25V的电解电容。

变压器输出端的9V电压经桥式整流并电容滤波,在电容C1两端大约会有11V多一 点的电压,假如从电容两端直接接一个负载,当负载变化或交流电源有少许波动都会使C1两端的电压发生较大幅度的变化,因此要得到一 个比较稳定的电压,在这里接一个三端稳压器的元件。

三端稳压器是一种集成电路元件,内部由一些三极管和电阻等构成,在剖析电路时 可简单的认为这是一个能自动调节电阻的元件,当负载电流大时三端稳压器内的电阻自动变小,而当负载电流变小时三端稳压器内的电阻又会自动变大,如此就能保持稳压器的输出电压保持基本不变。因为要输出5V的电压,所以选用7805。三端稳压器后面接一个105的电容,这个电容有滤波和阻尼用途。最后在C2两端接一个输出电源的插针,可用于与其他用电器的连接。

2、复位电路

复位电路采用上电自动复位,在复位电路上电的瞬间,RC电路充电,由于电容上电压不能突变,所以RST引脚出现高电平。RST引脚出现的高电平将会随着对电容C

24

-

的充电过程而逐渐回落,为了保证RST引脚出现的高电平持续两个机器周期以上的时间,需要合理地选择其电阻和电容的参数值,而电阻和电容参数的取值随着时钟频率的不同而变化。

3、时钟电路

在ATS52芯片内部,有一个振荡器电路和时钟发生器,引脚XTAL1和XTAL2 之间接入晶体振荡器和电容后构成内部时钟方式。在ATS52单片机内部,引脚XTAL2和引脚XTAL1连接着一个高增益反相放大器,XTAL1引脚是反相放大器的输入端,XTAL2引脚是反相放大器的输出端。 控制锁电路单元

图 控制锁电路单元电路

以Q16的基极作为门控信号的输入端与PA口相连,此电路由12V继电器、限流二 极管、偏置电阻以及9014与8050两个三级管复合成的驱动电路组成。在这里用到复合管的优点:是为了用低电平控制,考虑到由于ATS52的I/O口输出高电平时的驱动能力可能会不足,所以本电路采用复合三级管就可以避免驱动能力不足的情况发生。

●工作原理:

当PA口的某一位输出高电平时,Q16导通,Q6截止,此时继电器的控制线圈为开 路,继电器不动作。门锁接于继电器常闭端,门锁闭合,门处于锁死状态。

当PA口的某一位输出低电平时Q16截止,Q6导通,此时继电器的控制线圈闭合, 继电器动作。继电器常闭端断开,门锁打开,门处于打开状态。

25

-

蜂鸣器报警电路

以Q1的基极作为蜂鸣器控制信号的输入端与口相连,主要由蜂鸣器、9013 与9014两个三极管及偏置电阻组成。

●工作原理:

当输出高电平时,Q1导通,Q2截止,蜂鸣器回路开路,蜂鸣器不响。 当输出低电平时,Q1截止,Q2导通,蜂鸣器回路闭合,蜂蜜器发出响声。

图 蜂鸣器报警电路

液晶显示1602与单片机的连接

如下图所示,液晶显示器的使能端E与单片机的相连,当的电平由高为

低时,液晶执行命令。,分别连接液晶显示器的寄存器选择端以及读写选择端,用以控制选择数据寄存器或指令寄存器,用来控制单片机对液晶显示器的读与写操作。由P0口的内部位结构原理可知,当内部的控制信号置0时,多路开关接通输出锁存器的Q端。此时,与门关闭,上拉FET截止,形成P0口的输出电路为漏极开路输出,故需外接上拉电阻才能正常工作。

26

27

打印机GP16与单片机的连接

为打印机的使能端,控制打印机的正常工作。

图 液晶与单片机的硬件连接图

-

该打印机是采用查询方式与单片机连接的,单片机通过对的电平进行采样来

片机的读写端分别相连,用来控制单片机对打印机的读状态,写命令与数据的操作。作

示打印机处于空闲状态,可以执行当前的命令并打印数据。此外,打印机的读写端与单

判断打印机是否忙,高电平表示打印机正在进行工作,不能执行当前的命令;低电平表

28

断方式和查询方式。

图 打印机与单片机的硬件连接图

条码扫描器的接口

-

由图可看出数据接收的方式是采用简单的数据接收方式即直接串行接收,在接

输时,连线较为简单,主要将Clock线和Data线与单片机相连,为了保证在每一个时钟

信号的下降沿单片机能准确读取Data线的状态(一位数据),触发形式有两种方案:中

口设计中条码扫描器的输出接口选用键盘口搭配PS/2协议,采用串行方式进行数据传

29

下降沿时,就从口读取一位数据。

图 条码扫描器与单片机硬件连接图

单片机与DS1302、AT24C02的连接

本次设计采用查询方式,将CLK端与单片机的相连,当单片机检测到的

-

30

图 单片机与DS1302、AT24C02的硬件连接图

-

-

4 系统软件部分的设计

系统典型部分软件设计介绍 液晶显示模块

LCD1602液晶显示模块内部的控制器有11条控制指令。LCD1602液晶模块的读写 操作、屏幕和光标的操作是通过指令编程来实现的。基本操作如下:

(1)读状态

输入:RS=0,RW=1,E=1;输出:D0~D7为状态字 (2)写指令

输入:RS=0,RW=0,D0~D7为指令码,E为高脉冲;输出:无 (3)读数据

输入:RS=1,RW=1,E=1;输出:D0~D7为数据

(4)写数据

输入:RS=1,RW=0,D0~D7为数据,E为高脉冲;输出:无

液晶显示模块是慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志是 否为低电平(即不忙),否则该指令失效。忙标志为D7。

LCD1602液晶显示模块初始化(复位)过程如下所示。 (1)写指令38H:显示模式设置为2行,5×7字符 (2)延时15ms

(3)写指令06H:置输入模式为地址增量,显示屏不移动 (4)延时15ms

(5)写指令0FH:显示开,显示光标,光标闪烁 (6)延时15ms

(7)写指令01H:显示清屏 打印机GP16模块

本次设计打印机与单片机接口采用查询方式,即打印机的选通端与单片机的

31

-

连接,单片机要查询打印机的状态。与打印机的BUSY端连接,如果BUSY为高电平,表示打印机处于正在打印某一行的“忙”状态,如果BUSY为低电平,表示打印机处于“空闲”状态,从而确定单片机是否可以向打印机发送命令信息或数据信息。

单片机发送操作命令占两个字节,第一字节的高四位为打印方式,它分空走纸、字 符串、数据、图表四种,第四位决定行与行之间的距离;第二字节的内容是要打印的行数。

GP16的命令编码如下表:

表 GP16的命令编码表

D7 1 1 1 1 D6 0 0 0 0 D5 0 0 1 1 D4 0 1 0 1 命令功能 空走纸 打印字符串 十六进制数据 图形打印 基于PS/2口的条码扫描器

PS/2协议分析

软件设计的关键是模拟PS/2协议,PS/2协议是键盘与PC连接的双向异步通信协议。 它选用键码扫描集作为按键识别体系。扫描码和ASCII码完全不相同,所以接口设计的一个重要任务是在扫描码和ASCII之间建立一种映射关系,将读取的扫描码转换为ASCII码。对于大多数键码而言,在键盘被打开的情况下,只要一个键被按下,就一定会产生一个通码;只要一个键被释放,就一定会产生一个断码。于是,对于一个键值而言,它的组成就是通码+断码。在第二套通码中,对于绝大多数键而言,通码为单字节,断码为双字节的。其规则为:断码的第一个字节是F0H,第二个字节是这个键的通码。比如:按键“a”的通码为1CH,而其断码则为F0H,1CH,整个代码1CH,F0H,1CH就表示按键小写字母“a”的一个动作。若在PS/2键盘中整个击键的过程,先按下左SHIFT键,再按下a键,释放左SHIFT键,这些时间段内分别产生了左SHIFT的通码(12H),A的通码(1CH),A的断码(F0H,1CH),SHIFT断码(F0H,12H),查表后可以得出产生了12H,1CH,F0H,1CH,12H这一串表示大写字母“A”的扫描码。

如果将条码扫描器设置为键盘接口,它输出的信号就完全按照PS/2的数据格式编 码。这就是我们识别数据的基础。在键盘口接口系统中,由Data线和Clock线来控制对

32

-

扫描码的检索和传递。如果Data线和Clock线都处于高电平状态,则扫描器每次检索到一个扫描码,就会立即将其发送。每位发送的数据在时钟信号的下降沿(当时钟从高变到低的时候)被单片机读取。数据格式如表6所示。需要指出的是,条码扫描器在一行条码数据输入完成后,会在结尾自动加上一个“回车”符,这一点在单片机条码数据接口设计中很有必要,利用它可以在软件程序设计中判断一行条码数据的读取结束。

表 数据输出格式表

1个起始位 8个数据位 1个奇偶校验位 1个停止位 总是逻辑0 (LSB)低位在前 奇校验 总是逻辑1 由于键盘口扫描无规律可循,因此由键盘扫描码获得相应按键的键值(字符键为其 ASCII值)只能通过查表的方式获得。用单片机解码时,在程序中可以根据每个断码前一字节为F0H去判断当前的键是否释放,同样在条码扫描器向单片机发送SHIFT、CTRL等功能键都可以在程序中用标志位去进行处理,转换的方式是先去掉断码,保留通码,用通码去查表,设计中将常用键的通码以及与之相应的ASCII码定义在文件,从中查表得到相对应的ASCII码值,将之顺序记录到数组中。基于上面单个字符的接收程序,解读原始数据,识别所受到的条码数据,判断是否为回车符,回车符作为一串条码接收完标志,如果为回车符,则转入对这一串条码数据的处理程序,调用相应程序,入存储、显示、驱动电磁锁等应用子程序,就构成了一个完整的条码扫描器的应用体系。 系统软件流程图

系统软件流程分为存包流程、读取条码数据流程和取包流程。 存包流程图

1)空箱检测

流程图中的空箱检测采用软件查询的方式,其过程如下:

定义一个二维数组num[16][4],数组中的每一行有4个字节的内容,分别为柜号, 取包时的时间,分为时、分、秒。二维数组中的数据存放在存储器中。循环检测每个柜号所对应的时间,即密码,如果为一个非0的时刻,则继续检测,当遇到一个为0的时刻时,说明已经检测到了空箱。

2)可靠上锁

33

-

可靠上锁的检测是要检测门磁传感器的状态,看门的状态时开还是关,如果没有可 靠上锁,就要发出警报,通知存包人。而实际上报警不能为相当长的一个时间,因此设计一个超时报警的流程,进而做相应的处理。如可以通知上位机,由管理员来协助关好柜门。

34

-

图 存包流程图

35

-

读取条码数据流程图

图 读取条码数据流程图

该流程实际上是利用查询方式读入条码数据的。当条码扫描器的CLK端出现下降 沿时,单片机便从数据端接收一个字符,当条码扫描完毕时,会自动判断是否为回车符,这作为扫描完毕的标志。 取包流程图

该流程中判断是否为本单元箱子的编号的过程同存包时检测空箱确定空箱编号过程相似,即循环扫描二维数组中的num[n][0],如果它与条码中的箱子编号相同,则第一步定位就完成了,然后再核对条码上的时刻值(即密码)是不是与存储器中所存的时刻值相同,如果不同,则说明条码出错,此时给出出错的显示“WRONG”,如果核对一

36

-

致的话,则将此柜号显示出来。为了防止同一个条码的重复使用,在弹开箱子时,要把相应的时刻值清除。

图 取包流程图

37

-

结 论

经过三个月的努力,基本完成了自动存取柜的理论设计。在此期间,非常感谢我的 指导老师宋老师,还有同组的同学耐心的讲解,使我在自己对论文题目的认识上有了更深一步的理解。通过本次的毕业设计,很明显的检测出了自己有很多的不足。尤其是以前学过的东西掌握的不是很牢固。在论文的硬件设计阶段遇到了很多困难,尤其是电控锁的内部构造,因此选用了成型的产品,通过驱动连接到8255A的PA口上。另一方面,对于条码扫描器,只探究了基于PS/2协议接口的器件,而且其解码技术有待于深入研究。再一方面,关于检测箱内是否有物的反射式红外传感器被省略掉,其原因是考虑到传感器的安放位置,对于一些特殊规格的物品需要安放在不同的位置才能检测得到,因此比较难实现。结果采用软件查询的方式,检测外部存储器内的时间信息,如果时间信息不为0,则表示箱内有物。然而,对于开箱门后没有存放东西的情况,还需要进一步解决。当然,这可以算是本次设计的亮点,即节省了硬件,采用软件来代替16个传感器,节省了开销,能取得较好的效果。

38

-

致 谢

值此论文完成之际,谨向所有曾给予我帮助和指导的老师、同学和朋友们致以衷心 的感谢!

本论文的构思、规划设计、撰写得到了宋爱娟老师的悉心指导,在论文设计时给予 热心的指导与帮助,他广博的学术知识、敏锐的学术洞察力、认真的工作态度和严谨的治学作风、平易近人的为人风格给予我深刻的印象,使我受益匪浅。在此向宋爱娟老师表示诚挚的谢意!

另外我要感谢写此论文过程中给予我帮助的同组同学赵继阳同学,尤其是在软件设 计方面给予耐心的指导与帮助,他的扎实的单片机功底,还有给我指导时敏捷而全面的思维,在我的论文撰写过程中起了很关键的作用。

感谢四年来所有人教过我的老师们,他们谆谆教导使我掌握了基本的专业知识,学 会了基本的思考方式,为本文的撰写打下了坚实的理论基础,并为以后的继续学习和工作做了良好的铺垫。

衷心感谢宋老师以及大学期间对我有过帮助的老师,祝福全体老师身体健康,工作 顺利。

39

-

参考文献

[1] 常敏,王涵,范江波.单片机应用程序开发与实践.电子工业出版社,2009. [2] 杨居义.单片机原理与工程应用.清华大学出版社,2009. [3] 徐煜明.C51单片机及应用系统设计.电子工业出版社,2009.

[4] 马淑华,王凤文,张美金.单片机原理与接口技术(第二版).北京:北京邮电大学出版社, 2007.

[5] 马鸿文.基于ATC52单片机的自动存取柜的设计与实现.中国矿业大学,2006. [6] 张先震,黄山,李宁,李秀君.自动储物柜控制系统设计.四川大学,2009. [7] 王冰泉,凌成烨,王志疆,吴维华.条码阅读器与单片机应用系统的借口设计.同济大学电子信息工程学院,上海;上海仪器仪表研究所,上海,2004.

[8] 常喜.微型打印机在单片机系统中的应用.吉林师范大学信息技术学院,2006. [9] 王素凤.单片机与微型打印机的借口硬件设计.河北科技大学唐山分院机电系,2007.

[10] 周兴华.单片机智能化产品实例详解.北京航空航天大学出版社,2006. [11] 郭福源.条码扫描的现状和发展新动向.光电子技术与信息,1996. [12] 余先涛.单片机识别条形码数据的系统设计及应用.微型机与应用,2000. [13] 约翰﹒康斯坦丁乌.电控锁.洛克伍德安全产品有限公司,2001.

40

-

附 录

附录A 系统硬件原理图

41

-

42

-

附录B 英文附录文献

Design of storing compartment system based on fingerprint

identification

Abstract: Storing compartment system has been widely used, though it’s poor in security, inconvenience to use, high cost of maintenance. Technology of fingerprint identification was applied in storing compartment and it improves the security, make the system convenience to use, reduce the cost of maintenance. The structure of system was described; designs of hardware and software were detail presented. The result of application showed the feasibility and practicability of the method described.

I

Access tank system meets the needs of people in public places, the temporary deposit put the needs of private goods, and because of its ease of use, nearly in many public places in recent years has been widely used. But access to the cabinet system, there is poor security, use and maintenance of the high cost of inconvenience shortcomings.

This paper presents a fingerprint-based access counter system set up account, the fingerprint recognition technology to access the cabinet system, eliminating the present front access cabinet system’s shortcomings, and in safety, convenience and maintainability have been on a big promotion.

II ACCESS TANK SYSTEMS

Access to counter the current system generally two kinds of mechanical and electronic. Mechanical access tank system uses the traditional mechanical lock structure, communication has been key to the users, users with access to the cabinet to achieve the key switch. The system security is not high maintenance inconvenient shortcomings. As fruit key is lost, users can easily items taken away by others. Access counter defenders are likely to be for locks, very troublesome. As these shortcomings, mechanical access tank is gradually being electronic access to cabinet replacement.

Electronic access to cabinet[1] in people’s need to store items, the control drive activity circuit open air container, and then print out a password on paper; people need to remove the item, using the traditional password or bar code scanning open the small cabinet to achieve goals. This works to some extent make up for the mechanical cabinet system access flaws, but because its based on a password paper this work, or there is low security, easy maintenance

43

-

and higher maintenance cost disadvantage.

III SYSTEM ATCHITECTURE

Access based on fingerprint recognition system main cabinet up to the main equipment, access to cabinet (from equipment) and repeater (optional) and other groups into. System composed of multiple access cabinet access cabinet array, each access to cabinet through the RS485 bus to communicate with the master device, the system uses bus-type topology. Access to cabinet the size of the array can be extended freely, without Canada bus repeater case, at least you can drive 32 to access cabinets. System work, the access tank testing of the cabinet using the small cabinet situation and liquid crystal display (LCD) on the show, also will information is sent to the main equipment used for dispatch within. When users need to keep reserve items, in accordance with LCD display information, to find a free existence of small cabinet access counters, and to keep things operating. As the paper does not provide password, the user may forget what small items stored in cabinets, the problem can be find the master device sends a request to resolve a small cabinet. Master collection find small cabinet to a request by broadcasting a request to all access counters who's fingerprint information, the access counter in the receipt of the request, will receive fingerprint information and local matching fingerprint information, such as the match into power, the response of the primary device, the user requested that the items stored access counter this, the main equipment for target small cabinet position, the target location through the LCD and provide voice to the user guide to use who to target access to cabinet extract.

When the access counter for less than the time, LCD prompted to store items; this save take counter is full, then under the access from the main device storage cabinet letter interest, showing the location of free small cabinet to guide the user to use. When extract the user request is received, the scan fingerprint and extract the particular user sign, conduct, and local storage of fingerprint information match, if the match is successful, open the small cabinet; if matching is not successful, then this use reprints information were sent to the master, the master is responsible to find the use of household storage location, find the LCD and the voice after the success of the way through was display to users, to guide its smooth extract.

Main achieved master scheduling management of the system can includes only the microcontroller (MCU), RS485 communication interface part. It can be a separate module, it can be used to access control panel cabinet hardware, just different software. In this system, the use of a single fin legislative module is only responsible for scheduling management, simplified system design, reduce the degree of difficulty, and because the circuit is not

44

-

complicated, there is no increase in the overall system cost disadvantage.

IV. HARDWARE DESIGN

The design of the main equipment is relatively simple, using only the access control panel cabinet on the part of the circuit, so I do not elaborate. Access control panel cabinet structure shown in Figure 2, mainly by power, DSP, flash memory (FLASH), MCU, LCD, keypad, voice chip, RS485 interface and driver circuits etc., can control the access to cabinet 20 independent control of a small cabinet.

Fingerprint module uses FPC1011C [2] capacitive fingerprint mass sensor, which is an advanced capacitive fingerprint sensor. As a result of the reflection detection technology, the fingerprint sensor surface protection layer that the fingerprint sensor has a higher dry, wet fingers, the applicability and more long life. The fingerprint sensor and DSP inter-connected by SPI mouth, and without complex settings, image quality, easy to use.

This system, DSP implementation receives major orders from the MCU, fingerprint feature extraction, fingerprint matching and fingerprint storage operations, and no other part too much control, so the external ask for much, mining using TI's TMS320VC5509 chip can, it's the kernel used V, I / O port with V power supply, can run on 144MHz clock, the chip includes a 128k × 16bit of RAM, k of ROM, two programmable serial communication module, and provides external department of bus interface. This system, serial communication module configured for SPI work to form [3], to achieve the image sensor reads the fingerprint, external bus link then the FLASH chip SST39VF1601 used to store the collected fingerprint.

MCU uses TI's MSP430F149 MCU, this single film machine has a wealth of I / O resources can be configured with two USART to receive transponder. The system used to implement an RS485 USART communication; the other configured for SPI interface with the DSP data exchange each other. LCD, voice chip, keys, and drive circuit with I / O port mode control the timing to be achieved.

RS485 communication interface chip uses TI'sn SN75LBC184, its anti-static design with lightning, driving ability, then receiver inputs are open circuit fault protection features, such as superior limit of the slope-driven point [4], making reliable communication bus.

Voice chip ISD4002-240, its high quality sound recording can be achieve 240s voice recorders in the system for the operator's voice tips. LCD display with 128 × lattice YELMB128LDC, used to display operational information, guiding users to operate for. Button interface uses 4 × 4 array of keys for the user's access to exercise and administrators for manual control. Driver circuit used for the access counters the 20 small cabinet switch

45

-

controls.

IV. SOFTWARE SYSTEM

The system, software system design includes DSP software design and MCU software design in two parts.

Main achieved DSP software control to receive commands from the MCU, into the line fingerprint acquisition, feature extraction, fingerprint matching and storage operation, the main the software process shown in Figure 3. Through the SPI interface from fingerprint FPC1011C read the fingerprint image, feature extraction from the fingerprint image normalization of calculated pattern, calculate the effective image area, calculated fingerprint frequency fingerprint image enhancement, binarization, fingerprint image thinning and after thinning department management and other steps to form [5]. Fingerprint matching fingerprint information and internal FLASH comparison of characteristics of the fingerprint matches one by one library, storage operation is to achieve fingerprint information stored within the chip software mainly by the key processes, LCD display program, voice chip control program, DSP data exchange program, RS485 bus pass letter drive circuit control procedures and procedures for sub-modules to realize according to the operation of the user or the master request to the DSP or main set prepared to send the appropriate operating instructions, to respond to the results under the control of the access to cabinet the small cabinet switching functions.

Master device software design [6] is relatively simple, it is time polling system the access to the storage cabinet status, and a small cabinet position free to all parties access tank; when receiving a request to access cabinet fingerprint matching, the main device received fingerprint information broadcast to the access counter, poll the access counter is no more than successful, and returns to the request for access to cabinet. Initiate a request accordingly; the access counter can prompt the operator of small items stored in the cabinet position.

V

This paper describes a fingerprint-based access to cabinet system design, the fingerprint recognition technology to access the cabinet system, hence large increase access tank system safety and ease of use, lower maintenance costs. Described in this article designed based on fingerprint-based access cabinet system in a school library has been in operation for six months, due to run stable be reliable, ease of use, be welcomed by many users, compared to the same time access to counter the traditional system, greatly reducing maintenance costs, high the practical application of order value.

46

-

附录C 英文文献参考译文

基于指纹识别的存取柜系统设计

摘要:传统的存取柜系统得到了广泛的应用,但有安全性差、使用不便和维护成本高等缺点。将指纹识别技术应用到存取柜系统中,提高了系统的安全性、使用的便利性,降低了维护成本。阐述了基于指纹识别的存取柜系统的构成,重点介绍了系统的硬件和软件设计。应用结果验证了所述方法的可行性,具有较高的实际应用价值。

一、引言

存取柜系统满足了人们在公共场所需要临时存放私人物品的需要,并且由于其使用的便利性,近十几年来在许多公共场所得到了广泛的应用。但目前的存取柜系统存在安全性差、使用不便和维护成本高等缺点。

本文提出一种基于指纹识别的存取柜系统的设计,将指纹识别技术应用到存取柜系统中,消除了目前存取柜系统中的众多缺陷,且在安全性、便利性和易维护性上都得到了较大的提升。

二、存取柜系统及指纹识别技术

目前的存取柜系统一般有机械式和电子式两种。机械式存取柜系统采用了传统的机械锁结构,通过向使用者提供钥匙,使用者凭借钥匙实现存取柜的开关。这一系统有安全性不高,维护不便等缺点。如果钥匙遗失,使用者的物品可以轻易被他人取走;存取柜维护者则很有可能需要换锁具,十分麻烦。由于这些缺点,机械式存取柜正逐渐被电子式存取柜替换。电子式存取柜[1]在人们需要存储物品时,控制驱动电路打开空柜,然后打印出一张密码纸;人们需要取出物品时,采用传统的密码输入或条形码扫描方式实现打开目标小柜。这一工作方式一定程度上弥补了机械式存取柜系统的缺陷,但由于其基于提供密码纸这一工作方式,还是存在着安全性低、不易维护且维护成本高等缺点。

三、总体系统结构

基于指纹识别的存取柜系统主要由主设备、存取柜(从设备)及中继器(可选)等组 成。系统中多个存取柜组成存取柜阵列,每一存取柜通过RS485总线与主设备进行通信,系统采用总线型拓扑结构。存取柜阵列的规模可自由进行扩展,在不加总线中继器的情况下,最少可以驱动32个存取柜。

系统工作时,各存取柜检测本柜内各小柜的使用情况,并在液晶显示器(LCD)上显示出来,同时将使用信息发送到主设备内以供调度。当使用者需要存储物品时,根据LCD显

47

-

示信息,找到有空闲小柜的存取柜,并进行存物操作。由于不提供密码纸,使用者有可能忘记物品存放于哪个小柜,这一问题可以通过向主设备发送查找目标小柜请求来解决。主设备收到查找目标小柜请求后,通过向所有存取柜广播请求者的指纹信息,各存取柜在收到该请求后,将接收到的指纹信息与本地的指纹信息进行匹配,如匹配成功,则响应主设备,表示所请求的使用者的物品存储于本存取柜中,主设备获取目标小柜的位置,将目标位置通过LCD及语音的方式提供给使用者,指导使用者到目标存取柜取物。当本存取柜未满时, LCD提示可存储物品;本存取柜已满时,则根据来自主设备的各存取柜的存储信息,显示空闲小柜的位置,指导使用者前往使用。当接收到使用者取物请求时,扫描使用者指纹并提取特征,进行和本地存储的指纹信息进行匹配,如果匹配成功,则打开相应的小柜;如匹配不成功,则将此使用者的指纹信息发送到主设备,由主设备负责查找该用户的储物位置,查找成功后通过LCD及语音的方式显示给使用者,以指导其顺利取物。 主设备主要实现整个系统的调度管理功能,可以仅包括微控制器(MCU)、RS485通信接口等部分。它可以是一个的模块,也可以是采用存取柜控制板的硬件,只是软件不同。在本系统设计中,采用了模块方式,仅负责调度管理,简化了系统设计,降低了难度,且由于电路并不复杂,整个系统不存在增加成本的缺点。

四、硬件系统设计

主设备的设计比较简单,只采用了存取柜控制板上的部分电路,所以不加以说明。存取柜的控制板结构如图2所示,主要由电源、DSP、闪存(FLASH)、MCU、LCD、按键、语音芯片、RS485接口以及驱动电路等组成,可以控制本存取柜的20个可控制的小柜。 指纹采集模块采用了FPC1011C[2]电容式指纹传感器,它是目前先进的电容式指纹传感器。由于采用了反射式探测技术,使指纹传感器的表面保护层厚度可以达到普通电容式指纹传感器的100倍左右,因此使指纹传感器具有更高的对干、湿手指的适用性和更长的使用寿命。此指纹传感器与DSP间采用SPI接口,并且无须复杂的设置,图像质量好,简单易用。本系统中,DSP主要实现接收来自MCU的指令,进行指纹特征提取、指纹匹配及指纹存储等操作,并没有其他过多的控制部分,所以对外围要求不高,采用TI公司的TMS320VC5509芯片即可,它的内核采用1·6V, I/O端口采用3·3V电源供电,可运行于 144MHz时钟下,片内包括了128k×16bit的RAM, k的ROM,两个可编程的串行通信模块,并且提供了外部总线接口。本系统中,串行通信模块配置为SPI工作方式[3],实现读取指纹传感器的图像,外接总线挂接了FLASH芯片SST39VF1601用于存储采集到的指纹。

48

-

MCU采用了TI公司的MSP430F149单片机,此单片机具有丰富的I/O资源,具有两个可配置的USART接收转发器。本系统中一个USART用于实现RS485通信,另一个则配置为SPI接口实现与DSP的数据交互。LCD、语音芯片、按键及驱动电路采用I/O端口模拟控制时序实现。RS485通信接口芯片采用TI公司的SN75LBC184,其具有防雷抗静电设计,驱动能力强,接收器输入端有开路故障保护功能,限斜率驱动等优点[4],使得总线通信稳定可靠。语音芯片采用ISD4002-240,其录放音质量高,可实现240s的语音录放,系统中用于对操作者进行语音提示。液晶显示器采用128×的点阵YELMB128LDC,用于显示操作信息,指导使用者操作。按键接口采用4×4阵列按键,用于用户的存取操 作及管理员进行手动控制。驱动电路用于本存取柜中的20个小柜的开关控制。 五、软件系统设计

本系统中,软件系统设计主要包括DSP软件设计及MCU软件设计两部分。DSP软件主要实现接收来自MCU的控制指令,进行指纹采集、特征提取、指纹比对及存储等操作,主要的软件流程如图3所示。指纹采集通过SPI接口从FPC1011C读取指纹图像,特征提取由指纹图像归一化、计算方向图、计算图像有效区域、计算指纹频率、指纹图像增强、二值化、指纹图像细化以及细化后处理等步骤组成[5]。指纹比对将指纹信息和FLASH内的指纹库逐一比较特征是否匹配,存储操作则实现将指纹信息存储到芯片SST39VF1601内。

MCU软件主要由按键处理程序、LCD显示程序、语音芯片控制程序、DSP数据交互程序、RS485总线通信程序以及驱动电路控制程序等子模块构成,实现了根据使用者或者主设备的操作请求,向DSP或者主设备发送相应操作指令,根据响应结果控制本存取柜中各小柜的开关等功能。

主设备软件设计[6]比较简单,它定时轮询系统中各存取柜的存储状况,并将空闲小柜的位置发送到各存取柜;当接收到存取柜指纹比对请求时,主设备将接收到的指纹信息广播到各存取柜,轮询各存取柜是否比对成功,并将结果返回到请求存取柜。发起请求的存取柜可以据此提示操作者存物品的小柜位置。

六、结语

本文介绍了一种基于指纹识别的存取柜系统的设计,将指纹识别技术应用到存取柜系统中,从而大大提高了存取柜系统的安全性和使用的便利性,降低了维护成本。依据本文所述方法设计的基于指纹识别的存取柜系统在某学校图书馆已投入运行半年,由于运

49

-

行稳定可靠,使用便利,得到众多使用者的欢迎,同时相比传统的存取柜系统,大大减少了维护费用,具有较高的实际应用阶值。

参考文献:

[1]沈剑贤,黄石红.双机系统在电子存取柜中的应用[J].微计算机信息, 2003, 19(4): 41-42. [2]FPC1011C Product Specification[EB/OL]. Fingerprint . fingerprints. com. 2007. [3]TM320VC5509 Data Manual[EB/OL]. Texas Instru-ments, . com. [4]SN75LBC184 Datasheet[EB/OL]. Texas Instruments, . com.

[5]谢健阳,李铁才,唐降龙,等.指纹识别系统的设计与实现[J].微计算机信息, 2006, 22(3-2): 156-157.

[6]王苒,汤冬谊.基于RS485主从通信协议的实现[J].现代电子技术, 2003(24): 67-71.

50

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务