毕业论文快递包裹取件柜电脑控制器设计_第1页
毕业论文快递包裹取件柜电脑控制器设计_第2页
毕业论文快递包裹取件柜电脑控制器设计_第3页
毕业论文快递包裹取件柜电脑控制器设计_第4页
毕业论文快递包裹取件柜电脑控制器设计_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录 一、绪论11.概述1(1)快递包裹取件柜的发展历程1(2)我国快递包裹取件柜的发展现状和发展趋势12.本课题的研究意义及背景23.本文的主要研究内容2二、系统概述31.系统设计要求32.系统设计方案比较与论证3(1)控制器的方案选择比较3(2)键盘电路方案比较4(3)电源内部电路选择4三、系统硬件设计51.系统部分硬件介绍5(1)AT89C525(2)外部时钟芯片DS13076(3)扩展芯片PCF857472.系统硬件电路设计7(1)系统基本框架7(2)电源电路设计8(3)外部时钟电路设计8(4)电控锁装置电路设计9(5)液晶显示LCD装置电路设计10(6)I2C外围扩展电路设计11(7

2、)数据存储芯片电路设计11(8)12位矩阵式键盘电路12(9)检测模块硬件电路(物品是否在柜内或者门是否关紧)12(10)GSM模块接口电路14(11)SD卡的接口电路设计15(12)扬声器报警电路设计16四、系统软件设计171.系统软件设计主要思想172.主程序流程图173.LCD界面流程图184.矩阵键盘流程图205.GSM模块流程图216.检测取件柜有无物体存在程序流程图227.检测取件柜门是否关好程序流程流程图238.报警模块流程图23五、Proteus仿真与结果分析241.仿真调试24(1)仿真软件的介绍24(2)Keil与proteus联合进行调试步骤242.仿真过程24(1)启动

3、仿真24(2)存界面24(3)随机生成验证码25(4)存入物品界面25(5)取界面253.错误分析25六、总结26致谢26参考文献26附录271.附录一:系统总电路图272.附录二:系统部分程序27毕业设计说明书中文摘要:随着互联网电商行业的蓬勃发展,快递包裹在日常生活中更是随处可见。由于人工的快递包裹存取件存在一定弊端并影响快递包裹的效率,快递包裹取件柜也应运而生并快速发展。在国外,快递包裹取件柜自助站建设已有10多年历史,目前全球已有将近20个国家开始应用。本文通过对快递包裹取件柜的系统研究,分析了目前国内快递包裹取件柜的基本功能,分别从硬件和软件方面,实现了快递包裹取件柜的电脑控制器设计

4、,采用了AT89C52为核心控制芯片。整个系统除单片机主控部分,有液晶屏幕显示LCD模块,有12位矩阵键盘输入模块,扬声器报警模块,以及GSM模块发送模块和SD卡外部存储模块等。整个过程大体为快递员先输入收件人的手机号码,然后将物件放入取件柜,系统即会自动向收件人发送短信的验证提取码,收件人凭借其验证码即可取走包裹。快递包裹取件柜不仅节约了人力成本,也大大提高了快递包裹的运输效率。关键词:快递包裹,单片机,电脑控制器Abstract:With the rapid development of the Internet industry, electricity supplier courier

5、 parcel in daily life is everywhere. Because there are some disadvantages of artificial express parcels member access and influence the efficiency of express parcels, express parcel pickup cabinet came into being and developed rapidly. In other countries, express parcel pickup cabinet buffet station

6、 construction for 10 years, Currently there are nearly 20 countries began to apply. Through systematic research on the express parcel pickup cabinet, analysis of the current domestic express parcel pickup cabinet basic functions, respectively, from hardware and software to achieve a computer control

7、ler design express parcel pickup cabinet, Using AT89C52 as the core control chip. In addition to the main section of the entire system microcontroller, LCD module with 12 matrix keyboard input module, speaker alarm module, and GIM module transmitting module and SD card external memory module. The wh

8、ole process generally courier to enter the recipient's phone number, and then take the object into the cabinet member, the system will automatically send SMS verification code to extract the recipient, the recipient can be removed by virtue of its codes package. The whole process generally couri

9、er to enter the recipient's phone number, and then take the object into the cabinet member, the system will automatically send SMS verification code to extract the recipient, the recipient can be removed by virtue of its codes package. Express package pickup counter not only saving labor costs,

10、but also greatly improve the transport efficiency of express parcels.Key Words:Express parcels, single-chip, computer controller第1页(共73页)一、 绪论1. 概述(1) 快递包裹取件柜的发展历程随着互联网电商行业的蓬勃发展,快递包裹在日常生活中更是随处可见。由于人工的快递包裹存取件存在一定弊端并且会影响快递包裹的效率,快递包裹取件柜也应运而生,快速发展了起来。在国外,快递包裹取件柜站点已有10多年的建设历史,目前全球范围内,开始应用快递包裹取件柜已有近20个国家。

11、在日本,有一个标准的配置用来收发快递,在每栋楼宇都会有,主要是政府进行投资安装快递包裹取件柜,操作也十分简单,是公益属性的基础设备;而德国敦豪快递服务公司(DHL)也不例外,(相当于德国邮政系统的国企,旗下莆田国际快递自动化包裹取件柜站(Packstation)已覆盖德国90%总人口,并成为了一些新建小区的基本配套)因其铺设量足够大,其运营收入足以维护成本和收回投入,系统不单独收费,目前已向境外拓展。最近五六年,欧洲各国爱沙尼亚、法国、俄罗斯也在陆陆续续的开展了快递包裹取件的系统建设;在美国,亚马逊的“Amazonlocker”相当普遍,快递包裹取件柜通常会安置于24小时便利店、杂药店及货店,

12、消费者可选择三日内取货;在2012年底谷歌选择收购了的创业公司Bufferbox储物柜更是对国内快递包裹取件柜的投资与开发起到推波助澜的作用。(2) 我国快递包裹取件柜的发展现状和发展趋势我国的物流业虽然发展较晚,但可以看到的是未来发展的前景巨大,随着电商发展带动了快递业发展而快速的扩展开,快递包裹的增长率每年持续不下。我国的电商发展让网购变成为了最新的购物时尚,网购人群的数量庞大,致使快递行业的生意也变得异常火爆,于是在快递员送快递时的最终端,买家和快递员经常会在时间上无法协调,导致快递员会在买家之间反复的穿梭,浪费了时间,效率也大打折扣,面对这种局面的难题,大家称之为“快递行业的最后一公里

13、”, 尤其是快递公司关注的焦点,而快递包裹取件柜则会非常有助于改善这样的问题。在国内,据国家统计局的数据显示,2015年上半年,全国快递包裹同比增长25.6亿件。国家邮政局召开的2016年全国邮政管理工作会议,根据预计,2016年我国快递业业务量将完成275亿件,同比增长34%。快递包裹取件柜是近年来兴起的寄递终端设备,以综合成本较低、24小时值守、安全方便等特点,受到包括了中国邮政在内的各大寄递服务商的青睐,并且还有不少的非寄递企业在投资建设智能包裹柜,布局城市投递终端网络。2012年,京东商城自提柜已经悄然现身,据称,截止目前京东已在全国37个城市铺设了上千台自提柜,日均单量破万;苏宁易购

14、则在其全国线下门店设置自提功能;其它的物流企业如顺丰、圆通、韵达、中通等也均开始尝试使用自提货柜;2013年申通快递高调宣布将投资3000万元,重点在学校、社区建立约3万个自提柜。国家邮政局最新的发布中国智能快递柜发展分析现状及趋势报告来显示,目前我国业务量前50位的城市共安装智能快递柜31156组,累计派送快件超过1.13亿件。由此可见,快递包裹取件柜也越来越受到重视。虽然目前快递包裹取件柜也面临一些问题,由于处于发展初级阶段,例如成本较高,普及力度等多方面也需要进一步的改善,但是不可否认,它在未来发挥的作用必然会使得产出大于投入。2. 本课题的研究意义及背景目前在杭州,已有部分第三方企业和

15、快递企业开始推广快递包裹取件柜,但数量非常有限。个别拥有该技术的国内企业,今年也曾到过杭州的一些写字楼、社区来推广取件柜,但订单量很不尽人意。企业试水,快递企业、电商集体发力,目前,各大快递企业都在抢占有利地形。比如,韵达快递在上海投放了数台自助快递机;申通宣布投资3000万元,要在社区和学校建立数万个自提货柜;顺丰也有同类的智能储物柜的产品,并在杭州部分区域投放。顺丰速运杭州方面的负责人介绍,他们自行研发的快递储物柜目前在杭州已开始推行,功能主要体现在寄件上,针对的是按月结算的客户,散客寄件还不行。寄件人在该机器前自填快递单,然后将要寄出的包裹存到货柜内,快递员会来取包裹。“自提功能目前还没

16、有。”另外,电商大佬们也在发力快递智能柜市场,京东商场在北京、上海等地已有试水;亚马逊中国宣布和全家便利店合作,也在推广自提服务;苏宁易购宣布在线下门店试点自提区。杭州有企业尝到“头口水”,据悉,京东投放的自提货柜来自一家杭州本土企业:东城电子,一家主营生产寄存柜的实体企业。该企业的产品通过与电商合作,已在北京、上海、广州等地陆续投放,算是国内较早关注这一市场的企业之一。据统计,其实截至2014年时,快递行业就已经收入上千万元,已占领了邮政行业的半壁江山,电子商务的快速发展使得其以每年20%的增速发展,快递包裹取件柜也会对快递企业起到推进作用,快递包裹取件柜不仅可以降低各快递企业的运营成本,也

17、可以拓展经营渠道,这已经是必然的趋势。3. 本文的主要研究内容本文基于快递包裹取件柜,主要是针对了快递包裹取件柜电脑控制器的设计,该系统主要包括以下几个模块:GSM模块,单片机模块,I2C扩展端口模块,电控锁模块,报警模块,液晶显示模块,检测模块,十二位矩阵键盘等模块组成。本设计采用的GSM模块为西门子TC35系列的TC35i芯片。与无线通信模块的TC35是兼容的,其更为紧凑的结构设计,也大大得降低了产品外形的尺寸。采用AT指令来进行编程,达到使用GSM网络来向用户发送短信验证码的功能。单片机使用了51系列的STC89C52,考虑综合条件,其能基本完成所需功能。由于模拟使用四个柜子,在电路设计

18、上出现了引脚端口不够的现象,因此使用I2C 总线扩展芯片扩展了电路的引脚端口。检测电路则分为两部分,是通过硬件来检测柜门内有没有存放物品和柜门有没有关好这两个方面来出发的,通过使用传感器经过放大器后将模拟信号改变为开关量。十二位矩阵键盘模块采用了软件扫描来进行工作,实现用户输入。二、 系统概述1. 系统设计要求根据任务书的要求,对于快递包裹取件柜,利用单片机实现快递包裹取件柜电脑控制,要求实现功能有:1)一般用户的功能:按存物时,随机打开空箱,并输入取物时密码,系统给出相应的提示;取物时,需要用户手机收到的随机验证码进行输入,实现打开相应的箱体;当箱体内有东西时,按存物按钮,不会被打开。2)管

19、理员用户: 可以打开所有存有东西的箱体;能够清除所有密码,以防止被用户把空箱设密码;能够打开指定的任何一个箱体 。3)能够根据输入的取件人号码,来通过GSM模块自动的向取件人发送验证码。4)人机化的界面设计,方便用户简单快速了解系统,掌握其用法并使用。5)单片机的接口电路设计,可以显示当前时间的时钟电路。6)能自动的对必要信息进行记录,方便工作人员的查询。2. 系统设计方案比较与论证(1) 控制器的方案选择比较本设计本身即需要使用单片机来作为主控制器,并且由于单片机可以高效快捷且较方便的将软件程序与硬件电路相互结合,在修改物件时也较为便捷,同时可以使用proteus来进行设计仿真的需求,在其基

20、础上,通过改变软件程序也可达到升级换代的作用,加上快递包裹取件柜系统本身没有其它的高标准要求,根据系统的总体设计分析后,决定使用ATMEL家生产的AT89C52作为该系统控制器的方案选择,其可以实现系统设计过程中的时钟复位电路和报警电路,电控锁电路以及检测电路等,模块较全,且具备性价比高、温度控制与显示精度高、使用方便和性能稳定等优点。(2) 键盘电路方案比较键盘在系统设计中,实现的是以数据输入达到传送目的的功能,键盘分为编码和非编码的,单片机系统大多使用非编码键盘。键盘电路也可以通过键盘驱动显示芯片实现。在本设计中,由于主控制器为单片机51系列,键盘设计为12位按键,相对简单,故并不需要通过

21、驱动显示芯片来实现。键盘从硬件结构上分类,可分为并行接口的立式键盘结构和行列式矩阵键盘。最简单的并行接口的独立式键盘结构如图所示,独立式键盘结构则是指每一个按键占用一根I/O端口线,它 图2.1 独立式键盘结构的电路是独立的,由一根I/O线输入按键的通断状态,其电路配置灵活,软件结构简单,但输入口浪费大。考虑到单片机的引脚端口数量,操作速度也并没有很高要求,为了节约引脚端口的使用数量,本设计中采用了行列式矩阵键盘,只需要使用7个引脚端口。(3) 电源内部电路选择本设计中需要将220V电压调变为5V,故需要一个电源电路来改变电压,将交流电压220V通过变压器变压,再经过整流桥整流、滤波电容进行滤

22、波后,经过稳压得到稳定的电压。在稳压器的选择上,由于7805三端稳压IC内部电路具有过压保护、过流保护、过热保护功能,这使它的性能很稳定。各厂家的7805参数都差不多,最大输出电流不能超过1.5A。器件有良好的温度系数,因此产品的应用范围很广泛。可以运用本地调节来消除噪声影响,解决了与单点调节相关的分散问题,输出电压误差精度分为±3%和±5%。且78系列的稳压管外部电路组成稳压电源时所需要的外部组件极少,在一定程度上有助于设计电路的简洁化。故该电路设计中选择了7805稳压器。三、 系统硬件设计1. 系统部分硬件介绍(1) AT89C52本设计采用的51单片机基本结构与其他系

23、列单片机无异,均有CPU、内部存储器、定时/计数器、中断系统控制器、并行I/O口,全双工串行口及OSC时钟电路。其内部结构方块图如下: 图3.1 单片机内部结构方块图I2C(InterIntegrated Circuit)总线是由荷兰的PHILIPS公司开发的两线式的串行总线,用以连接微控制器及其外围设备。是一种微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具备有接口线少,控制方式简单,以及器件封装形式小,和通信速率较高等优点。本设计涉及使用了I2C总线扩展技术,用了P3口的第二功能,于是这里着重讲一下P3口的结构与功能。P3口的第一功能就是作为通用的I/O口使用,第二

24、功能就是作为控制和特殊功能口使用,这时8条端口线所定义的功能各不相同。P3口能带3个或4个TTL负载(即输出端连接的是使用双极晶体管的数字电路)。P3口第二功能的定义如下图所示。 ·P3.0 串行输入口(RXD) ·P3.1 串行输出口(TXD)  ·P3.2 外部中断0(INT0)·P3.3  外部中断1(INT1)·P3.4定时/计数器0的外部输入口(T0) ·P3.5定时/计数器1的外部输入口(T1)·P3.6  

25、60;外部数据存储器写选通(WR)·P3.7  外部数据存储器读选通(RD)  表3.1 P3口各个引脚的第二功能  (2) 外部时钟芯片DS1307DS1307是I2C总线接口实时的时钟芯片,可独立于CPU工作,同时计时准确,还有备用电池引脚以防主电源掉电情况下无法工作的情况,有产生年月日时分秒的功能,闰年还可自动调整,内部还具有集成一定容量、具有断电保护特性的RAM,可以保存一些关键的数据。I2C总线是飞利浦公司专用的一种二线专利技术,它用两根线SDA串行数据线和SCL串行时钟线连接多个具有I2C总线接口的外围设备器件,每个I2C

26、器件都有唯一确定的地址。 图3.2 DS1307硬件电路(3) 扩展芯片PCF8574PCF8574是一款带I2C总线,具有CMOS电路的芯片,是PHILIPS公司推出的。可使大多数MCU实现远程I/O口扩展,该器件包含一个8位准双向口和一个I2C总线接口,PCF8574电流消耗很低,且口输出锁存具有大电流驱动能力,可直接驱动LED。它还带有一条中断接线INT可与MCU的中断逻辑相连。通过INT发送中断信号远端I/O口不必经过I2C总线通信就可通知MCU即单片机是否有数据从端口输入,这意味着PCF8574可以作为一个单被控器。 图3.3 PCF8574功能框图   

27、; 2. 系统硬件电路设计(1) 系统基本框架图3.4 快递包裹取件柜系统框架如图所示,以AT89C52为硬件电路核心控制的芯片,12位矩阵键盘作为系统输入,输出则用液晶LCD12864显示屏,使用电控锁控制柜门的开关,硬件检测电路来模拟检测门柜是否关好,柜内是否有物体已放入,扬声器负责非法操作发生时的报警电路,GSM模块负责发送验证码短信给取件人,以及搭载的外部存储SD卡,和对必要信息的记录。该系统大致工作流程如下:工作人员在存件时,进入管理者界面,输入快递包裹取件柜的密码,进入存件界面后,工作者通过液晶显示屏界面输入单位编号及取件者的手机号码,单片机会在接收到命令后,扫描系统中是

28、否有空柜,如果未存满则会打开一个空箱,存入物件后手动关闭,随后单片机会自动生成四位随机整数,结合着箱柜号生成的六位验证密码,密码将会以短信的信息来通过GSM网络发送给取件人,然后内部存储器将会记录保存过程中的必要信息,方便日后信息查询以及之后的密码验证。取件人在取物时,按“取物”键,进入用户的界面,通过键盘输入短信验证密码,使相应的箱子打开,取走物件。若连续三次发送密码输入错误的情况,则扬声器报警系统启动报警,同时一定时间内系统进行锁定,无法进行输入操作。(2) 电源电路设计图3.5 电源内部电路硬件电路设计本设计中采用的电源主要是5V电压,所以采用7805芯片(是常用的三端稳压器件)使输出电

29、压为5v。电源电路采用了变压器进行变压,变压比设置为1:12,则是将220V变为18V左右的,经过变压器再经过桥式整流,将交流电源变为直流电源,再通过滤波电容C1和C3进行滤波,同时起到分压作用,最后通过7805进行稳压输出5V电压,电容C2的作用是保护电路。(3) 外部时钟电路设计 图3.6 外部时钟电路设计 外部时钟电路采用的是上文中提到的DS1307芯片,该芯片使用了I2C总线技术扩展的SCL的AA线和SDA的AB线,分别并联了P3口扩展芯片的SCL端线和SDA端线,达到了记录日期,时分秒的目的。(4) 电控锁装置电路设计图3.7 电控锁硬件电路设置本设计电控锁的硬件电路如图3.7所示,

30、由于仿真了四个柜子,故本设计有四个电控锁以供分别使用。采用了G2RL-14-E-CF-DC12型的功率放大器,可承受250V的交变电压以及16A的电流。该电控锁一般处于关闭的状态代表着快递包裹取件柜的锁是闭合的,当P0.0口的单片机输出信号,电流经过三极管放大器的作用将会使RL1导通,于是电磁铁L1吸和,此时电控锁处于开的状态,可进行物品存放,或方便管理者检查判断物体。二极管D主要起到了保护的作用。(5) 液晶显示LCD装置电路设计液晶显示模块LCD在便携式仪器中有广泛使用, LCD12864含有两个液晶驱动器,有着画面显示清晰, 能耗小,成本低廉, 能显示8*4个汉字,或者是16*4的符号及

31、数字,其各引脚功能如下。 图3.8 LCD各引脚功能使用P2口作为数据的传输端口与LCD12864的DB0DB7引脚相连,控制端与P3口引脚相接,使能端E与P3.0口的引脚端口相接,命令数据的选择端RS引脚端口与P3.5的引脚端口相接,读写选择端R/W引脚端口与P3.1引脚相接,左屏片选CS1端口与右屏片选CS2端口分别与P3.6引脚和P3.7引脚相接,根据LCD12864通信协议,采用单片机C语言来编写程序达到控制LCD显示的预期效果。图3.9 LCD液晶显示电路(6) I2C外围扩展电路设计图3.10 扩展I2C端口引脚电路PCF8574芯片在之前已经提及过,本次设计电路中使用了两片PCF

32、8574芯片,使用芯片的SCL线和SDA线连接了P3.3端口和P3.4端口,与另外一个芯片的SDA和SCL并联使用,通过与门连接P3.2的中断口连接,然后A0到A2选接不同的地址确保各芯片地址不会冲突,分别选择了000和100,扩展了16个引脚端口,解决了本设计出现的I/O引脚不够用的情况。 (7) 数据存储芯片电路设计图3.11 数据存储电路本设计电路采用了数据存储芯片24C系列的24C32A,用来存储一些关键信息,SCK和SDA并联连接I2C扩展芯片的SCL端线和SDA端线。由于地址不能与PCF8574的两个芯片地址相同,故选取地址111。(8) 12位矩阵式键盘电路本设计所需输入按键较多

33、,本系统采用了常用的12位矩阵式键盘,工作方式采用的是软件编程扫描矩阵键盘。在系统开始运行后不间断的扫描按键,来确保不会错过输入,软件主要思路为:单片机会依次的给行线输出低电平,每次保持其中一行为低电平,其余都为高电平,然后立即检测列线是否有低电平,若存在则我们就可判断出是哪一行的那一列的按键被按下,用同样方法进行轮流给各行送低电平,再开始检测列是否存在低电平,由此扫描全部的按键,判断是否有存在键的按下,单片机给不同的键设置了不同的键值,根据键值来执行不同的程序模块,由此完成设计任务的前提下,节约了大量I/O口资源,以便于其他模块的电路进行连接。如图10所示,该系统即快递包裹取件柜的用户键盘输

34、入提供了0到9十个数字键,以及“存”和“取”两个功能键,共十二个键来完成信息输入,由于单片机I/O口的珍贵,故采用12位行列式矩阵键盘方式,完全做到了节省I/O口的使用。键盘模块共需要用到7个I/O口,将单片机P1口上的P1.0到P1.6一一分配给矩阵键盘模块。图3.12 12位矩阵式键盘电路(9) 检测模块硬件电路(物品是否在柜内或者门是否关紧)本设计在检测装置模块,共有两大功能分类:一个是用来检测快递包裹取件柜内部是否有物品,另外一个是用来检测快递包裹取件柜的门有没有关好,同样的都采用了运算放大器中的比较放大器将模数量转变成了开关量,由于仿真了四个快递包裹取件柜的柜子,所以也都设计了4个。

35、A)快递包裹取件柜内物体是否存在 图3.13 检测物体是否存在硬件电路首先说本电路的目的就是设计一个硬件电路检测物品是否存在,由于力敏电阻在proteus仿真中并没有找到,所以使用了热敏电阻进行代替,但使用了力敏符号FSR来表明,其实际为力敏电阻。本电路高电平时,即快递包裹取件柜内不存在物体;低电平时,单片机工作,意味着取件柜里存在物体。本电路原理就是当有物体存于快递包裹取件柜时,力敏电阻会随着感受到物体的压力而降低阻值,由此运算放大器TL034的3端电压升高,由此输出一个高电压,由于LM393比较放大器采用的是是反相接入,此时LM393的电压3端小于2端的电压,输出了一个低电平,单片机工作,

36、低电平则表示物体存在。电路中的R2电阻值较R1小一些,是为了更容易的检测出轻的物品;一般情况,电阻的标称值与真实值不等,所以需要在R20上串联一个小阻值的可调电阻。运算放大器TL034的作用就是放大电压,确保有物品时可以检测得到,比较放大器LM393则是将模拟量信号转化成了开关量。 B)快递包裹取件柜柜门是否关好 图3.14 检测取件柜门是否关好显然,这部分的检测模块是为了检测快递包裹取件柜的门有没有关好,在没有关好的情况下,电路处于低电平,通过程序控制触发扬声器报警电路来鸣响做到提醒的作用。电路工作原理大致为:当光敏传感器LDR有光照时,电阻自然会随着光照而降低,通过运算放大器放大电路将模拟

37、信号放大,随后通过比较放大器3端与比较放大器的2端进行比较,滑动变阻器RV的作用与之前的检测电路一样,是为了使感光变化值更加明显。本电路中的三极管的作用相当于上个电路的运算放大器,由于三极管起到放大电流的作用,三极管放大器要想有放大作用必须处在其工作状态,在本设计中使用的三极管Q5是PNP型的,故要保证发射极电压大于基极电压,基极电压大于集电极电压,所以在电源到基极的电路之间并联了电阻起到分压作用,使得发射极电压大于基极电压。(10) GSM模块接口电路本系统采用了的是西门子TC35系列的TC35i。这种无线模块功能可以与TC35兼容,同时结构设计紧凑,用户产品的尺寸大大缩小。TC35i与RS

38、232数据接口、GSM2/2兼容、双频(GSM900/GSM1800),该模块及射频电路可以和基带做成一体,给用户提供了标准的AT命令接口,短消息、传输数据、语音和传真等快速、可靠、安全,用户使用该模块的的应用开发以及设计都是极为方便的。下图是 TC35 模块内部结构的原理框图 ,它主要是包含了GSM基带处理器、GSM射频模块、ZIF连接器、闪存、供电模块(ASIC) 、天线接器六大部分。基带处理器是 TC35i核心的模块 ,主要用来负责处理GSM终端内的语音和数据信号,并且还涵盖了蜂窝射频设备中的所有包含的模拟和数字功能 ,结构的设计和运行完全符合了GSM协议标准,同时还可以在不加入外接硬件

39、电路的情况下 ,支持FR、EFR和FIR等的语音信道编码。通过GSM 模块上的40针ZIF连接器与移动设备连接,ZIF连接器上连接设有数据、电源线、音频信号、控制及移动设备用来组成人机接口 ,与GIM模块的串口通信则通过ZIF连接器来实现。 图3.16 TC35内部结构原理框图TC35i模块主要由GSM基于处理器、GSM射频模块、闪存、天线接口、供电模块、ZIF连接器六大部分组成12。其内部已设有SIM卡与GSM模块的连接电路,设置了对应卡槽,单片机只需要将52单片机的RXD和TXD两个串行口,即P3.0和P3.1分别与TC35i模块的GSM_RXD 和GSM_TXD连接,完成数据之间的传输,

40、另外在TC35i的15脚IGT上,至少维持100ms的低电平变成高电平,才能正常启动TC35i模块,这里使用P1.0控制IGT口。在单片机与TC35i模块之间需接上7407芯片进行TTL电平的转换。TC35i与AT89C52的硬件接口电路如图所示。 图3.17 TC35i与C52的接口电路硬件设计目前,发送短消息基本上为Text模式以及PDU(Protocol Data Unit,指协议数据单元)模式共两种。使用Text模式进行收发短信的代码编程简单,实现起来相对十分容易,但是其主要缺陷为不能发送中文形式的文本短信,只能发送英文短信;而PDU模式不仅可以发送英文短信,同时也支持中文短信的发送。

41、故一般使用PUD模式编码,但是由于proteus仿真并不方便进行本部分模块仿真,无法实现用短信方式发送消息到手机上,故本设计在这个模块只是介绍原理,在软件编程方面,仿真过程时,会在存件人输入取件人手机号码后自动的生成随机码来进行。(11) SD卡的接口电路设计图3.18 SD卡的接口电路硬件设计 上图则表示为SD卡的接口电路,由于proteus中无法实现插入真正的卡,故选择了一个卡套来模拟SD卡。SD卡的片选CS连接到的是单片机的P0.4,串行同步时钟信号CLK则连接到P0.7端口,数据端DO连接单片机的P0.6端口,读写选择端DI则连接至单片机P0.5,卡套的作用主要负责电平的调节与匹配,使

42、得单片机的输出TTL电平保持和SD卡的数据读写的电平一致,由于Proteus仿真效果确实无法看出SD卡模块实际效果,本设计中不进行SD卡的实际仿真。(12) 扬声器报警电路设计本设计电路会在快递包裹取件柜存在非法操作时工作,考虑到由于单片机各个端口的驱动能力都较弱,电流极小,就算是带有强上拉功能的单片机,一般也就只能够有20mA的驱动能力,所以很难做到把一个扬声器的声音驱动的很响亮,于是在该电路设计过程中,大家一般都是选择外加三极管,MOS管(半导体管)甚至是用更加专业芯片来对扬声器进行驱动。该电路只用了一个接口,设计采用的三极管也是对电流进行放大的作用,当单片机端口给出低电平时,电路工作,这

43、时便能够驱动扬声器报警系统,同时LED灯也会亮与蜂鸣器同时进行提示。 图3.19 非法操作时报警装置以上就是本系统硬件电路的各个控制电路的设计电路,总体概括来说,P1口主要接了电控锁和仿真SD卡电路,P3口采用I2C总线进行了端口扩展,扩展的端口用于了检测模块接口电路的连接,同时也是液晶显示LCD的接口电路端口,P2则是单片机最小系统电路,内部时钟和复位电路,以及键盘的输入和数据存储芯片的接口,这里不再赘言,系统加上软件编程,使各电路更加的分时有序工作。在设计过程中,实地考察了目前国内ESM用的快递包裹取件柜,发现其实本课题设计还有很多功能模块可以添加,例如语音模块,键盘的触屏实现输入,二维码

44、扫描收件等功能,实际生活中,快递包裹取件柜取件柜的实用功能还有很多。四、 系统软件设计1. 系统软件设计主要思想系统在运行时,首先液晶显示屏LCD进行初始化,同时再对系统中各个变量进行初始化,之后不间断的扫描键盘模块是否存在按键按下的情况,根据接受的信号不同,对应相应的模块输入执行,显示出LCD屏不同信号下应该显示的文本。当有人按下“存包”功能键时,系统液晶显示屏LCD首先显示两个权限,是否是“管理员”或者是“普通存件”(每个操作界面都可以选择“确定”“取消”)一般用户选择“普通存件”后再显示快递包裹取件柜的剩余量,程序首先扫描第一个编号的柜子是否是空柜,若是,则显示有剩余,如不是再扫描下一个

45、柜子是否是空柜,在有剩余柜子的情况下,则可以直接进入下一个界面即显示存包裹的输入界面,用户在输入手机号码之后,点击确定存包,于是系统在程序中按照一定的顺序选择柜门,从第一个柜子开始扫描,是否是空柜,若是,则打开,不是进行下一次扫描,空柜扫面完成后随机生成0-9之内的四位数字,加上柜门号构成六位验证码,保存在柜子的密码数组里,然后打开对应的电控锁,在用闭户放入物品关柜门之后,通过GSM模块向用户发送短信验证码,提醒用户取件,并将其信息进行保存存储到外部的SD卡中,之后返回主界面。当有人按下“取包”功能键时,系统液晶显示屏LCD首先显示两个权限,是否是“管理员”或者是“普通取件” (每个操作界面都

46、可以选择“确定”“取消”),一般的取件用户则显示界面输入取件验证码,输入后系统根据输入验证码的前两位确定柜门,取出对应柜子的密码,与用户输入的密码进行核对,如输入错误,则提示并再次重新输入,若三次均错,则系统将其视为非法操作直接启动扬声器报警,并于短期内键盘不得输入。如若正确则打开箱柜,用户取件后若未关闭箱子,系统启动扬声器报警装置,用户取件后关闭柜门,成功取件后将会在sd卡中写入对应物件已被取走相关信息,并对单片机内的标志位和它的无用信息进行复位和清除。由此完成一个取件过程。系统自动回到主界面。2. 主程序流程图分析了系统软件思想之后,系统框架下的主程序流程图见下图。图4.1 系统主流程图3

47、. LCD界面流程图存包模块与取包模块都需要LCD来实现。而LCD的工作过程如下分析:液晶显示LCD屏的初始化,首先先开显示,在显示开时开始清屏,然后系统会进行页设置,进行列设置,然后起始行设置等。由于LCD12864的反应速度相对于单片机的操作速度,要快的很多,所以读/写检测可以一开始不做,或者进行的适当延时也来达到检测效果,考虑到程序设计的严谨型,每次对LCD12864进行数据的读写之前都先判断一次LCD12864是否存在着进行内部的操作。 图4.2 液晶显示屏LCD的初始化流程图由于proteus仿真软件中LCD13864并没有自带字库,所以在显示部分采用了描点的方式显示,内容主要的分成

48、了两个部分,一个部分是显示字符(字母、数字、符号),如“,”,“1”,“:”,只占用大小为8*16,一个部分是显示汉字的,则需要16*16的大小来显示了,在编写程序时也需要两种函数实现,编程时将个不同显示界面的函数于主函数分开,写在LCD12864.c文件中。实际中由于显示的汉字较多,其种类也相对复杂些,于是选择了一个函数专门存放文字,写在ziku.h的头文件内,主函数通过头文件12864.h调用LCD12864.c文件,LCD12864.c会调用字库函数的文字点阵来显示汉字,增加了可读性和可理解性。显示流程图如下: 图4.3 LCD显示界面流程图4. 矩阵键盘流程图系统设有12个按键,分别是

49、09以及“取”和“存”两个功能键,采用方式为行列式矩阵键盘的方式进行连接,将按键模块分别编写成子函数,不断重复的执行,以获取使用者输入,子函数中通过设一个变量key来进行存储,默认key为12,每一个按键设有一个键值对应,数字键09键值可直接标记为09,“取”键设为10,“存”键则可以设为11,待子函数的调用结束后,返回key的值传给主函数,若键值为12则会表示没有按键输入,主函数会根据不同的键值,依次返回执行不同的程序段,用来控制各全局变量的变化以及各个界面之间的切换。当程序读取到列电平有变化后,通过软件编程的方法去除键盘抖动,延时0.01s后再次判断是不是存在有电平变化,当按键按下后,对k

50、ey变量附上其相对应的键值,之后继续进行扫描电平,用来判断按键是否松开,若发现读取的电平恢复了正常,即按键松开后,才会继续操作进行下一步,否则程序就会停在保持这里不动,以此来规避同一个按键键值会被多次读取的情况,导致系统的运行产生出错。下图3.4则为行列式矩阵键盘的编程流程图。 图4.4 键盘编程流程图5. GSM模块流程图编写GSM模块函数需要参照GSM接口的通信协议,单片机通过串口先给休眠的GSM模块一个启动的指令,之后再启动定时器,协调GSM模块串口波特率以及单片机串口波特率一致,然后通过AT指令,单片机再向GSM模块发送一个11位的手机号码,以及6位验证码的数据,GSM根据这些数据再向

51、用户发送短信,发送成功之后,再返回给单片机一个发送成功的信号,具体流程见图。 图4.5 GSM模块流程图6. 检测取件柜有无物体存在程序流程图检测有无物体这个程序,主要是发生在用户按下“存”键后,程序执行扫描后,界面显示出有无空柜,方便用户存放快递包裹。流程图如下: 图4.6 检测柜子内有无物体存在程序流程图7. 检测取件柜门是否关好程序流程流程图检测取件柜柜门的程序,主要是针对取件后出现柜门未关的情况时。程序流程图如下:图4.7 检测柜门是否关好程序流程图8. 报警模块流程图电路报警针对的是柜门没有关好和非法操作(取包裹密码输错超过三次),主要是通过软件控制其引脚电平的正负来控制蜂鸣器发声,

52、延时的大小可调节声调。其如图所示:图4.7 检测柜门是否关好程序流程图五、 Proteus仿真与结果分析1. 仿真调试(1) 仿真软件的介绍由于单片机的程序设计需要在特定的编译器中进行,编译器完成对程序的编译、链接等工作,并生成可执行文件。对于单片机程序的开发,一般采用keil公司的Vision集成开发环境,它支持C51语言的程序设计。(2) Keil与proteus联合进行调试步骤使用的版本是Vision4和proteus8.0,首先是keil的设置1)首先安装vdmagdi联调驱动软件,然后再进行以下设置2)在Keil软件上单击“Project菜单/Options for Target”选

53、项或者点击工具栏的“option for ta rget”按钮 。3) 弹出窗口,点击“Debug”按钮4) 在出现的对话框里在右栏上部的下拉菜单里选中“Proteus VSM Monitor-51 Driver”。并且还要点击一下“Use”前面表明选中的小圆点。5) 再点击“Setting”按钮。6) 设置通信接口,在“Host”后面添上 “127.0.0.1”,如果使用的不是同一台电脑,则需要在这里添上另一台电脑的IP地址(另一台电脑也应安装Proteus)。在“Port”后面添 加“8000”。设置好的情形如图所示,点击“OK”按钮即可。最后将工程编译,进入调试状态,并运行。 Prote

54、us8.0的设置1)进入Proteus的ISIS,鼠标左键点击菜单“Debug”,选中“use romote debuger monitor”。此后,便可实现Keil与Proteus连接调试。2)最后必须右击单片机加载hex文件,开始调试。2. 仿真过程(1) 启动仿真LCD上载入主界面,四个储物柜均为全部关闭状态,此时只有按下键盘上的“取”键和“存”键系统才会响应。(2) 存界面按下key=10后进入“存”界面,“存”界面显示是否为“普通用户”或“管理员用户”。若是普通用户,按入“存”之后再按下数字键09则进行输入手机号码;若用户是管理员,则需输入密码,密码确认成功后,根据想要打开的箱柜编号

55、,按对应的数字编号打开(取件柜被打开后自动清除密码);“取”键是返回上一层界面,普通用户完整输入手机号码后,再按“存”键确定。进入随机生成验证码的界面。(3) 随机生成验证码由于proteus无法完成手机验证码短信的发送,于是选择使系统随机生成验证码(柜子编号+4位随机数)来显示,代替短信发送的密码。然后进入存入物品的界面。(4) 存入物品界面此时验证码已发送,电控锁会根据柜子编号相对的打开,在放入物品后,检测电路会判断是否关好门,关好之后,电控锁关闭,界面提示物品放入成功,短信已发送。(5) 取界面按下键key=“11”即“取”,输入6位验证码后,若正确,则对应箱柜直接打开,若错误,则提示输

56、入错误并返回输入界面,连续三次错误会触发报警装置电路,取件完成后,检测装置继续检测,若存在门未关的情况也会触发报警装置电路。取件完成后检测电路检测到没有物品存在则会自动的清除密码。界面提示“欢迎下次使用”,返回到主界面。3. 错误分析在硬件电路的设计中,出现了一些问题,在此主要说两个硬件电路设计产生的错误和改正方法。比如说在扩展端口芯片时,一开始扩展了I2C芯片两个端口的地址都取了000,在添加了数据存储芯片24C系列后才意识到了如果芯片的地址是一样的话,则地址重复,中断时会出现紊乱,会影响了整个单片机的工作。还有在硬件设计检测电路初期打算利用三极管发大信号达到信号放大的目的,但是考虑到三极管

57、的工作特性会随着电流而改变,三级管若处于截止状态那么电路出现故障也会影响到了检测电路的功能。故最后选择了使用运算放大器来发大模拟信号。六、 总结本次的毕业设计课题的研究,针对的是基于AT89C52的快递包裹取件柜的电脑控制器设计,鉴于仿真软件proteus有限的仿真功能,未能对GSM模块以及SD卡模块进行仿真,但从总体效果上看设计的电路和编写的语言程序已可以基本的实现该控制系统的控制要求,从实际应用上看,其实应选用更为高级的单片机,例如STM32,来做主控芯片,设计系统还可添加语音模块,可以使用效果更好的触摸屏,以及可以通过二维码扫描物件方便快递员,在实际生活更需加入摄像头装置确定取件人,在投入使用前其实也需要进一步完善和修改。该系统的主要应用方向即是快递包裹取件柜,在国外发达国家早就已经普及完善了,如今中国所投入的快递包裹取件柜也在大大增加,相信快递包裹取件柜会不断的完善扩展,迟早有一天快递包裹取件柜会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论