1、 1994-2010 China Academic Journal Electronic Publishing House.All rights reserved.http:/通信与广播电视年第期电子自动存包柜控制系统的设计丁力春”摘本文介绍了电子自动存包拒控制系统的软硬件设计,为单片机应用 系统的开发提供了一个典型实例。关键词双机通信波特率红外检刚抽爪谷务签溉化田月,恤娜川记访一、概述存包柜用 于超市、商场等公共场所,为方便顾客寄存物品和商家管理而出现。本存包柜控制系统是由多片单片微机控制的典型应用,其基本功能如下存包时,顾客投币或按存包键由商家设定,系统自动搜索空箱分配给顾 客,生成并打印
2、密码,语音提示顾 客取密码纸,同时打开分配的箱门。取包时,顾客输人密码纸 上 的密码,系统校验正确后,分两种情况若未启用投 币功能,则立 即打开对应 的箱门若启用 投币功能,则 系统根据存包时间计算顾 客应补投的币数,并显示提示,待顾客补足币后打开对应箱门。本存包柜系统具有监控报警功能,包括顾 客存包后箱内无物顾 客取包后箱内仍有物非存取包过程中,箱门被异常打开等,系统检测到这些异常情况均会鸣叫报警,并显示不同提示符,使管理人员及时发现并处理。作者系木公司技术开发中心助理工程师作者系本公司技术开发 中心工程师 1994-2010 China Academic Journal Electroni
3、c Publishing House.All rights reserved.http:/年第期通信与广播电视二、工作原理及硬件设计本系统由一块主板与两块继电器板组成,主板与继电器板之间采用串行通信方式实现信息交互。主板向继 电器板发送控制命令,继 电器板完成相应操作后将结果反馈给主板。主板硬件设计图为主板原理框图。主板使用两块主和打印。主连接键盘、液晶显示 屏、人接口、时钟块及存储器。五接口用 于与继电器板之间的通信若安装投币机,则将投币机连接至主的外中断口,以外中断方式识别。打 印连接打印机、切纸刀和语音块等。主和打印之间采用中断方式通过、传输数据,由主控制打印的操作。本系统采用点阵式液晶
4、显示屏,显示控制 系统由行驱动控制器、列驱动控制器组成。不与发生联系,只要提供电源就能产生行驱动信号和各种同步信号,比较简单。读、写操作时序与本系统使用微处理器相符,因此它们可直接相联。键键盘盘盘盘盘盘盘盘盘盘盘盘盘盘盘盘主主主主主主主主主二打印印目目她液液晶显示示示打印机切纸刀语音块图继电器板硬件设计图为继 电器板 原 理框图。继 电器板 由一个、两 个一地 址译码器叮和巧、红外继 电器 和 电锁继 电器、开关矩阵及尤犯接口等组成。接口用于与主板之间的通信红外继 电器与红外发射管连接,巧与红外接收管连接,红外检测用于判断存包箱内是否有物由输出位地址,通过玲巧译码,选通驱动某箱开关开关矩阵供检
5、测箱门的开关状态。1994-2010 China Academic Journal Electronic Publishing House.All rights reserved.http:/通信与广播电视田年第期继继继继继继继红外检测测测开开关关关关关关关关关关矩矩阵阵阵阵阵阵阵阵阵开开开开开开开开开门门门红红外继电器图三、软件设计主板软件设计主板 的主是 系统的控制中心,在接收到按键 或投币等外 中断时,判断所需进行的处理,向打 印或继 电器板 发送 控制命令,使其完成相应的操作,并接收反馈信息,确保操作正确。主程序对系统进行初始化,并检测当前存包柜各箱内是否有物,将检测结果和当前时间送至
6、液晶显示屏显示。四个 中断服务程序定时器功中断、州功外 中断、外 中断和串行中断。定时器功中断用于刷新显示 时间、延 时处 理等。外中断接收按键中断,并根据键值和当前状态进行处理。州外中断接收投币 中断,分存包和取包两种情况进行处理存包时,分配 空箱并生成密码,控制打印开始打 印和启动语音提示,向继 电器板 发送存包命令取包时,校验密码,根据存包 时 间计算 应补币数。每次接收到中断,将已投 币数与应投币数比较,直至补足币后 向继 电器板发送取包命令。串行中断接收继 电器板反馈的信息,并根据接收信息调用子程序处理。处理子程序完成各项操作功能。如按键处 理、控制打印打印密码、发送接收串行通信数据
7、、读写、读写时钟块、显示管理菜单及提示等。本系统涉及双机通信的应用。主板与继电器板的串行口直接相连,以实现全双工的双机通信。主板和继 电器板的串行接口均在方式状态工作,波特率为的饰计数常数计算一波特率主板和继 电器板的振荡频率为,选二,值取为。控制液 晶显示屏显示数据时,首先要 把显示驱动控制器指令写入相关指令寄存器中。通过相关指令设置 页地址 和列 地 址,唯一确定显 示中的一个单元,这样就可用读写指令读出该单元的内容或向该单元写进 一个字节数据。本系统西文采用字符显示,中文采用字符显示。1994-2010 China Academic Journal Electronic Publishi
8、ng House.All rights reserved.http:/年第期通信与广播电视开开始始发发送门未关报警警发发送异常常常常常常常常开开门报警警警撤消报警警反反馈开失败败开开箱成功功启启动定时时无无物报警警恢恢复开箱前状状状状状状状状态态监控过程程程有物报警警结结束束图 1994-2010 China Academic Journal Electronic Publishing House.All rights reserved.http:/通信与广播电视年第期本控制系统需记录存取包时间,并在空闲时显示 时钟,因而选用 了提供实时时钟。内设日历时钟信息寄存器,通过读写这些寄存器,可读出
9、当时的时间信息或更新、修改保存的日历时钟信息。继电器板软件设计继 电器板根据主板发送 的控制命令,实现驱动箱门开关即开箱、红外检测箱 内是否有物、检测箱门开关状态等功能,并将操作结果反馈给主板。主程序对系统进行初始化。中断服务程序包括定时器功中断程序和串行 中断程序两部分。串行 中断程序接收主板发送 的控制命令,调用处理子程序完成相应功能。定时器功中断程序实现对各种异常情况 的检测,并将检测结果通过串行通信反馈给主板。下 面以定时器功中断程序为例介绍本系统 的检测功能。图为定时器功中断程序流程 图。在管理员管理过程中,系统关闭检测功能。除此外,每次定时中断,系统根据所处状态进行检测。系统检测到
10、箱门打开,若是日常检控过程中则向主板发送异常开门报警若是 门未关报警状态则继续报警若是存取包过程中则将状态改为开箱成功状态并启动定时开 门延时。定时到箱门仍未关,则向主板发送门未关报警,并将状态设为门未关报警状态。系统检测到箱 门关闭,若是 门未关报警状态则撤消报警若是存取包过程中,箱门未能成功 打开则向主板 反馈开箱失 败信息若是开箱后箱门再次关闭,说 明存取包结束,检测箱内是否有物若是存包过程中,检测到无物则报警若是取包过程中,检测到箱内仍有物则报警。处理子程序实现打开指定箱 门、检测箱门开关状况、检测指定箱内是否有物、发送和接收串行命令等功能。四、结束语本控制系统是针对实际应用需求设计的,开发步骤如下硬件电路设计、组装、调试应用软件的编制、调试应用软件的链接调试、固化、脱机运行。系统的扩展 和配置设计充分满足应用系统的功能要求。硬件结构与软件方案结合起来考虑,并考虑整个 系统相关器件之间性 能匹配。应用软件各功能程序实现模块 化、子 程序化。程序存储区、数据存储区的规划考虑到既节约内存空间,又操作方便。采用抗干扰设计,如接收外 中断去抖动、中断执行 中屏蔽其他中断、串行通信校检等,提高系统可靠性。本存包柜控制系统已投人使用,并达到了令人满意的效果。