基于STM32 F103单片机的智能购物车系统设计
2013-11-13王英志
杨 佳 王英志
(1.吉林建筑大学 电气与电子信息工程学院,吉林 长春 130118;2.长春理工大学 电子信息学院,吉林 长春130022;3.吉林省建筑电气综合节能重点实验室,吉林 长春 130000)
0 前言
随着经济的发展和人民生活水平的提高,人们的购物需求也逐渐增长,与此同时超市应运而生。经过几十年的发展,超市的经营模式已经深入人心,超市也已经成为人们日常消费最重要的场所之一。随着超市规模的发展壮大和质量上的保障,越来越多的人们选择在超市购买食品及生活用品。下班时间、节假日或超市促销活动时成为了超市购物的高峰期,此时收银台必定会出现排队长龙,即使所有收银台开放也无法明显缓解付款时的压力。有些顾客即使购买很少量的商品也需要等上很长时间,怨言不断。为了解决付款排队等待时间过长的问题,智能购物车是一个不错的选择。
智能购物车将RFID技术和ZigBee技术相结合,将无线通信的便利和快捷应用在选择商品和付款环节上。
1 系统总体结构
智能购物车系统在传统购物车上安装可触摸的电子系统,其功能是当购物车启动时显示超市近期的促销信息,用户可以通过触摸屏查找所需商品的位置及路线,当用户将商品放入购物车时,液晶屏可以显示此商品的相关信息(商品名称、价格、生产日期、保质期等),并实时显示购物车中商品的总额。用户结账时,通过购物车的无线通信模块将商品总金额传输到收银台,实现一键式付款,大大提高了商品结账的速度,有效的缓解了购物高峰期带来的压力。
本系统由中央信息处理系统、RFID模块、ZigBee通信模块、输入与显示系统等组成[1]。中央信息处理系统是核心控件,实现对数据的处理和各组成部分的控制。RFID模块用于对商品信息进行查询。ZigBee通信模块将商品的总额传输至收银台。触摸屏便于使用户进行功能上的切换,从而显示促销信息、商品信息、购物路线等。系统总体框图如图1所示。
图1 系统总体框图
2 硬件设计
下面分别对系统的各组成部分的硬件结构进行设计。
2.1 中央信息处理系统
中央信息处理系统与所有其他模块相连接,当用户通过触摸屏输入数据后,中央信息处理系统将此数据进行分析处理,判断用户所需服务内容(路线导航、商品信息查询等),然后将数据和控制信号传递至相关子系统进行相应动作,并及时向用户反馈信息。
中央信息处理系统选用意法半导体有限公司推出的STM32系列的STM32F103单片机为核心,采用32位基于ARM的Cortex-M3 CPU;2.0-3.6V供电;32K~512K字节的闪存程序存储器;2个12位模数转换器;7通道DMA控制器;串行单线调试(SWD)和JTAG接口;7个定时器,9个通信接口;所有I/O口映像到16个外部中断;几乎所有的端口均可容忍5V信号。中央信息处理系统主要由单片机、时钟电路和复位电路组成,如图2所示。
图2 中央信息处理系统电路图
2.2 RFID 模块
RFID模块采用TI公司开发的一种性价比较高的非接触感应芯片RI-R6-001A作为射频阅读器的核心。它与条形码相比,不需要直线对准扫描,而且可多目标识别和运动识别,RI-R6C-001A芯片采用柔性封装,每秒最多可同时识别50个频率为13.56MHz±7kHz的目标。它采用国际统一且不重复的8字节唯一识别内码(Uniqueidentifier,简称UID),其中第1~48bit共6字节为生产厂商的产品编码,第49~56bit1个字节为厂商代码 (ISO/IEC7816-6/AM1),最高字节固定为“EO”[2]。
国际标准化组织已把这种非接触感应芯片写入国际标准ISO15693中。其主要原因是因为该芯片具有封装任意、内存量大、可读可写、防冲撞等独特的功能。
RI-R6C-001A芯片的串行通信接口通常使用三根线,其中的SCLOCK为串行双向时钟;DIN为数据输入,DOUT为数据输出。图3为RI-R6C-001A的电路图[3]。
图3 RI-R6C-001A的电路图
2.3 ZigBee 模块
采用CC2430无线通信模块实现ZigBee通信,它是符合IEEE802.15.4标准的片上Zigbee产品,在单个芯片上整合了ZigBee射频(RF)前端、内存和微控制器。它共有48个引脚,使用1个8位MCU,128KB可编程闪存,8KB的RAM,还包含模拟数字转换器、定时器、以及21个可编程I/O引脚等。P0、P1口是完全的8位口,P2口只有5个可使用的位。CC2430内部已集成了大量必要的电路,因此采用较少的外围电路即实现信号的收发功能[4]。
2.4 输入与显示系统
本系统采用7寸液晶显示模块——CJT07001BN作为智能购物车的人机交互界面。CJT07001BN支持MCU接口;色彩深度:65K色;支持文字和绘图两种混合显示;内建10KB字型ROM;内建几何图形加速绘图引擎;支持中外多种文字;睡眠模式功能;支持触摸屏;集成4线式电阻式触摸屏控制器;多数开发工作均可在PC机上完成。本系统采用RS232接口[5],实现单片机与触摸屏的数据通信。
3 软件设计
本系统软件设计采用模块化程序设计方法,包括系统初始化程序、导航程序、无线通信程序、触摸屏显示程序等模块[6]。
系统上电后,首先进行初始化过程,显示待机画面,画面中显示多个选项:商品导航、商品信息查询等,当用户触摸相应选项位置后,系统首先判断是否进入商品导航功能,如果“是”,则转向导航程序;如果“否”,进一步判断是否查询商品信息,如果“是”,通过RFID阅读器读取商品电子标签中的信息(商品价格、厂家、生产日期等),如果放入购物车,被判定为“购买”,显示屏显示商品总额;购买完成后进入结算程序,用户根据商品总额付款。其主流程图如图4所示。
图4 主程序流程图
4 总结
国内现有超市手推车只实现容器功能,并且不能完成货物量的统计查找功能,造成了大量的人力物力和资源时间的浪费。本系统将单片机技术、信息处理、传感器技术、无线通信技术、RFID技术相结合,对传统超市购物车进行改进。
本系统在传统购物车基础上,安装RFID阅读器模块、无线通信模块、触摸显示屏、嵌入式系统及充电模块。顾客可以通过触摸显示屏在超市入口处设定需要购买的商品,系统会在触摸显示屏上显示最快捷的购物路线;商家可以在超市的中央控制系统设定某商品的最新促销活动内容,当顾客通过此设定商品时,触摸显示屏会自动播报视频图像及语音内容;当顾客结帐时,不需要对所购商品逐一扫描,而是一键式付款,每位顾客的付款耗时为30秒左右。于此同时,还可以在系统中显示或者语音播报单个商品的价格、生产日期、生产厂家等信息。
[1]刘兵,刘晓朋,曾翔亮.基于条码识别技术的智能购物车设计[J].森林工程,2012,11.
[2]郑创立.RI-R6C-001A 集成电路的原理与应用[J].国外电子元器件,2004,06.
[3]李文江,高锋,丁睿.RI-R6C-OO1A射频芯片在个人医疗信息系统中的应用[J].电气自动化,2007,29.
[4]刘江沙,雷伟,尹酉.基于CC2430的串口无线模块的设计[J].国外电子元器件,2007,04.
[5]张喆.基于STC89C516的超市智能购物车研发[J].自动化技术与应用,2009,28.
[6]江田.基于RFID的商品购物智能终端的设计与实现[D].大连理工大学,2013,06.