蓝国财,黄梅春,黎凤敏,吴树添,覃雪婷,闭传琦,冉秋桂
(广西民族师范学院 数理与电子信息工程学院,广西崇左,532200)
在高速发展的互联网时代,网上购物已成为一种主流购物方式之一。对于快速发展的快递行业来说既是发展的良机,也是一项不小的挑战。随着快递数量的增长,包裹丢失和损坏的现象也日益增多,而快递公司索赔流程麻烦,得到的赔偿大多不能使客户满意,导致客户的合法权益得不到保障,所以目前人们需要的不仅是良好的服务态度,更多的是快递的安全问题。对快递行业而言不管是那个快递公司都会为“最后一公里”配送和签收的问题而烦恼。目前国内疫情严峻但快递的数量依旧只增不减,甚至有些疫情严重地区发来的快递可能携带病毒没有能及时消毒从而导致快递员和收件人存在的间接性感染等风险,针对上述问题,设计出一款配送便捷、自动消毒、操作简单和安全实用的智能快递柜。
该设计包括硬件与软件两个方面,其中硬件方面采用STM32 单片机、HMI 串口屏、SIM900A 短信模块、消毒模块、HC-05 蓝牙模块、电磁锁模块和LM2596S 电源模块组成,软件方面由单片机程序设计和手机APP 程序设计相结合。本设计采用STM32F103C8T6 作为主控,负责系统所有的数据接收和发送工作,HMI 串口屏的数据通过串口1 和单片机通信保持数据的传输,单片机使用串口2 向SIM900A短信模块发送AT 指令,SIM900A 短信模块会根据单片机给他发送的AT 指令判断电话号码是什么,并给指定用户发送取件码,同时单片机经串口3 向HC-05 蓝牙模块发送数据,并在手机APP 连接HC-05 后向手机APP 发送数据。系统框图如图1 所示。
图1 系统框图
STM32F103C8T6 采 用ARM Cortex-M 内 核,STM32系列32 位微控制器,其功耗较低、稳定性高、价格便宜和速度较快等特点。STM32F103C8T6 有两个12 位A/D 转换器、7 通道DMA 控制器、多达80 路快速I/O 端口以及7 路定时器和3 路UASRT 串口,最高主频可达72MHz。其操作简单、功能多变,可以发送和处理接收到的数据,各参数和性能都符合本设计要求,所以我们将该芯片作为本设计的主控芯片。智能快递储物柜主控系统电路图如图2 所示。
图2 智能快递储物柜主控系统电路图
HMI 串口屏通过串口1 与单片机主控进行通信。HMI串口屏功能多、开发简单,具有按扭控件、音频控件、图片控件和定时器控件等多种组态控件。HMI 串口屏自带一个编程软件可对其编写程序,几乎不占用单片机的内存,单片机通过串口1 发送指令更改控件属性即可更改屏幕显示内容,同时我们利用HMI 串口屏制作了四个页面,分别是取件页面、输入管理员密码页面、管理员寄件页面和管理员修改密码页面。本设计采用的是一款淘晶驰HMI 串口屏,显示屏的分辨率达到800×480,显示屏可以显示彩色并且自带CPU 处理器、数据存储器和可编程口,提高了整体的易用性。HIM 串口屏页面设计图如图3 所示。
图3 HIM 串口屏页面设计图
在本次设计中,短信的发送主要是STM32 单片机通过串口2 向SIM 短信模块发送AT 指令,SIM 短信模块给输入的指定电话号码发送一个由单片机随机生成的6 位数取件码。SIM 短信模块使用SMT封装双频GSM/GPRS 模块方案,该模块的处理器运行速度快、成本低等优势满足开发需求。SIM900A 能快速,安全可靠地完成系统方案的数据,语音传输,短消息服务以及传真等功能。SIM900A 短信模块工作流程图如图4 所示。
图4 SIM900A 短信模块工作流程图
消毒模块通过超声波换能,使液态水分子经陶瓷雾化板高频共振分解为天然流动水雾,超声波可使水溶性药物在常温下雾化为1~5μm 微雾颗粒作为消毒水介质,利用超声波的定向压力作用,将消毒水喷洒到物体表面,起到消菌杀毒的作用。
LM2596S 电源模块其输出驱动电流高达3A、输出电压稳定、效率高,符合本设计要求,HMI 串口屏和SIM900A都是需要5V 大电流来驱动,单片机的驱动地电流是远远不够的,所以采用此模块可以更好的为该设计提供稳定的供电。
电磁锁采用电生磁原理,当电流通过硅钢片后电磁锁产生强大的磁力将铁板牢牢吸出实现关门功能。很小的电流还能使电磁锁产生巨大磁力,可以有效的控制快递柜门的关闭和打开,虽然驱动电磁锁的电流很小但是只靠单片机的驱动是完全不够的,因此我们利用继电器模块与单片机相配合,对电磁锁进行控制,当单片机给继电器发送高电平时继电器导通电磁锁吸合达到开门目的,当单片机给继电器发送低电平时继电器断开电磁锁失去磁力达到关门目的,由此来实现柜门打开和关闭。
单片机利用串口3 和蓝牙模块实现数据的传输。蓝牙模块既可作为主机也可作为从机。当我们需要蓝牙从单片机中获取数据时,蓝牙就作为从机接收数据,然后再作为主机给手机APP 传送数据由此实现数据的双向传输。
本设计包含硬件程序设计和软件程序设计。硬件是基于主控芯片STM32F103C8T6 的C 语言程序设计,软件设计则是采用App Inventor 图形化编程。
STM32 单片机作为整个系统的核心,它的3 个串口分别与HMI 串口屏、SIM900A 短信模块和HC-05 蓝牙模块连接,负责这3 个模块的数据收发与执行。该系统的HMI串口屏和蓝牙模块需要向单片机发送大量的数据和接收单片机的指令,所以单片机就需要处理这复杂的数据结构,SIM900A 短信模块发送短信是需要花费一定的时间,在此期间内我们不可再次输入新号码进行短信的发送,直到短信发送完成后才能进行新短信的发送,为解决这个问题我们采用非阻塞式、带标志位的结构体和链表等方式进行处理。SIM900A 短信模块采取非阻塞式的方式发送短信,这样就解决了短信发送时需要等待的时间,用链表的方式进行短信的排序,无需等待上一条是否发送成功就可以继续输入新的电话号码,系统已经自动排序和存储好该电话号码的队列,上一条短信发送成功后,自动发送下一条短信直至发送完全部短信,当上一条短信发送失败时系统会自动检测,并且重新给该电话号码发送短信直到发送成功为止,因此本设计的工作效率高、可靠性强、安全性高等优点。单片机程序流程如图5 所示。
图5 单片机程序流程图
这款手机APP是 App Inventor 和Google 公司和麻省理工学院一起设计的,一款完全图形化开发手机APP 网站,不需要太复杂的程序,只需要把对应的模块拼接起来即可完成编程操作。很大程度便捷了开发人员和初学者。该设计软件页面主要包含取件码取件、扫码取件和显示快递柜后台数据等功能。手机APP 设计界面如图6 所示。
图6 手机APP 设计界面
用户页面、快递员页面的取件码和电话号码我们都设计限位的功能,取件码必须大于等于5 位,电话号码也必须等于11 位才会进行存取件的操作。快递员、用户可根据自己需求到快递柜前进行存取件的操作,快递员页面还可以查看快递柜的存储情况,例如当1 号箱存有件时1 号箱后面会显示一个数字1,如果箱号无存件时箱号后显示数字0,在存件时快递柜也会自动推荐箱号给你存件,当1 号和2号箱都有件的情况下快递柜会自动推荐三号箱给你存件,无需快递员选择,除此之外,我们在利用HMI 串口屏配置的喇叭接口为本设计添加了语音提示功能,当快递员存件成功时会播放音频提示快递员几号柜存件成功,当用户取件成功时会播放音频提示用户几号柜门取件成功,然而这些音频的操作并不需要去外加一个语音模块或者喇叭驱动器,只需要录入音频和简单的指令操作即可驱动喇叭播放指定的音频提示。存件、取件效果图如图7、图8 所示。
图7 快递员存件效果图
图8 用户取件效果图
用户进入手机APP 连接好蓝牙后可直接使用取件码进行取件,也可以通过手机APP 扫描二维码取件。当然第一次扫码取件时,需要用户绑定自己的电话号码后即可使用扫码取件功能,当用户再次进入手机APP 连接蓝牙后会自动显示用户上一次绑定的电话号码,无需再次绑定就可以扫码取件。管理员进入手机APP 连接好蓝牙后输入管理员密码就可以看到快递柜后台的详细数据,该数据会根据快递柜的存取情况实时刷新。手机APP 测试效果图如图9 所示。
图9 手机APP 测试效果图
本作品是基于STM32 F103C8T6 单片机设计出一款智能快递储物柜。该设计采用消毒模块对其入柜的快递进行消毒,蓝牙模块给手机APP 传输数据,用户可通过手机APP 直接扫描二维码或输入取件码进行取件,无需对快递柜进行操作,这种无接触的取件方式更符合当前社会的需求。快递员可以进入APP 输入管理员密码后,随时随地查看快递柜的详细数据,并且超过规定时间后会再次通过短信提醒用户过来取件。经实践证明该设计可行性高、操作简单、安全性高、投件便捷、运营成本低等优点,符合当前社会需求。