基于RFID和GSM的智能化旅行箱的设计
2015-01-29张明吕玥黄晓孙城城
张明 吕玥 黄晓 孙城城
【摘要】 该产品系统采用模块化设计,以单片机为控制主体,整合GSM模块和RFID技术,实现旅行箱与手机终端的通信。本文从系统工作原理,硬件与软件设计等方面详细阐述了该智能旅行箱的原理和实现方法。
【关键词】旅行箱单片机GSM RFID
随着社会经济和科学技术的发展,以智能化控制技术为基础的智能家居系统已经成为近年来各国在智能领域研究的重点,但是在智能化如此普及的今天,旅行箱的智能化设计却很少,传统的旅行箱已不能满足我们更高层次的需求,因此一款智能的旅行箱应运而生。本旅行箱是基于RFID和GSM无线通信模块,并由手机端软件控制,可实现人机交互。该系统具有以下两种功能:一、及时提醒用户遗漏的物品,例如行李整理完毕后,该系统进行清单核实发现有物品遗漏后,它会通过手机短信对用户进行提醒;二、可进行远端查询,如在用户不能或不方便打开行李箱的情况下,可通过手机终端对该系统发送一条查询指令,箱内物品的清单便会立刻显示在手机上。该系统具有低功耗、实用性好、适用范围性广等特点。此外,该系统可移植性强,可应用于智能家居产品中,具有极大的扩展性和发展前景。
一、系统功能原理
该系统由射频读卡器、GSM通信模块、单片机和电源组成。射频读卡器的作用是读取电子标签的序列码,GSM通信模块的作用是收发信息,单片机则控制其它各模块协调工作,处理信息。其工作流程是:先在手机终端的应用软件中设定所带物品信息,每件物品都对应一个电子标签的序列号,待衣物都放入箱内后,射频读卡器读取放入箱内的电子标签序列号并传送给单片机,然后通过GSM模块,以短信形式发送到手机终端,应用程序自动调取短信内的电子标签信息,并与预设物品对应的序列号进行核对,如能完全匹配则无衣物遗漏,否则有物品遗漏,并提示。当用手机发出查询指令时,箱内的GSM通信模块接收到指令后会将指令传给单片机,然后单片机再调用相关程序和射频读卡器,然后将读卡器读出的电子标签序列码再通过GSM模块发送给手机,然后手机端应用软件会将电子标签序列码对应的物品以清单的形式显示出来。
二、硬件电路设计
硬件部分主要包括射频读卡器、单片机和GSM通信模块GTM900B,其中射频读卡器将读出的电子标签的序列码通过相关接口传至单片机,再经由GSM模块发送至手机终端。
射频读卡器经过USB转TTL串口引出4个引脚,分别为RXD/TXD/VCC/GND,其中RXD/TXD引脚分别与单片机的对应引脚相连,以串行通信方式进行数据的传输。
单片机的p3.0/p3.1脚分别与GTM900的18/19脚(RXDO/TXDO)相连进行数据的传输,高电平有效。GTM900B的数据接口采用串行异步收发,其接口提供标准的UART接口,UART接口的信号除了RXDO/TXDO为高电平有效外,其余均为低电平有效,而且UART接口提供512byte的发送和接收FIFO,支持可编程的数据宽度,数据停止位,奇/偶校验或无校验,UART接口的最大支持速率为115.2kbps,GTM900的1-5脚与电源VCC相连,支持3.3-4.8 V,6-10脚与GND相连,24-29脚与SIM卡相连,此外GTM900可使用AT指令集,并且短消息模式支持TEXT和PDU模式,通过UART接口与外部CPU通信,实现无线传输,并且支持800/900/1800MHZ三频自动选择。具有体积小,质量轻,耗电少等优点。
三、控制电路的软件设计
3.1硬件控制程序工作流程
系统开机,等待短信指令,当接收到来自手机的查询或提醒指令时,单片机会给射频读卡器发送读取指令,读取电子标签的序列码,然后再调取短信发送程序,将返回的序列码通过GSM发送到手机终端
3.2射频数据读取指令
读写器与STC89C52串行通讯,通讯过程由单片机发送命令及参数给读写器,读写器将命令执行结果状态和电子标签UII数据返回给单片机。
3.2.1询问状态
发送十六进制aa020055若成功连接返回aa03000055
若连接失败无返回可能是端口设置不一样或者波特率不一样,模块默认的波特率为57600
3.2.2停止操作
发送十六进制:aa021255确认停止返回aa03120055失败无返回
3.2.3单标签循环识别:
发送十六进制:aa021055返回数据1模块确认收到指令:aa03100155
3.2.4多标签循环识别
发送十六进制:aa03110355返回确认指令aa03110155
3.3 GSM短信发送子程序
在该部分程序中,由主函数调用发送子函数send(),单片机通过串口依次发送相关的AT指令及要发送的信息内容到GSM通信模块,然后由GSM模块发送到指定的手机终端,从而实现信息的传输,部分指令如下
Serial_Init();pwon=O;Delay_ms (1000); pwon=l; Send_command(”AT”);Send_command(”AT+CMGF=1”);Send_command(”AT+CMGS=手机号码”);Send_command(”123”);Send_Hex(Oxla);
四、手机应用软件设计
4.1开发及运行环境
JDK7.0.250.17, Eclipse, Android Development Toolkit,Android 2.4及以上
4.2数据库设计
在本地建立Goods.db的数据库,用于存储物品信息,包括物品名称,物品编号及对应的序列码,提示信息等。
4.3软件功能及工作原理
原理:先在手机软件上预先选定箱内需带物品,然后放人物品,物品放入过程结束后,在软件上点击“检查”,软件自动给旅行箱的GSM模块发送检查指令,进入物品核查过程,并对旅行箱的GSM模块返回短信进行提取与解析,读出其中的电子标签序列码,与事先选定的物品所对应的序列码进行核对,检查有无遗漏。若有预选物品没有放入箱内,则会在手机上给出提醒。若需查询箱内物品,则点击“查询”,便自动给旅行箱发送查询指令,并将GSM返回的序列码所对应的物品以清单形式显示出来。
软件主要功能:物品预设、短信指令发送、短信内容提取与解析、数据对比。
五、结束语
该论文介绍了智能旅行箱设计的总体方案以及功能原理,并介绍了控制电路的硬件实现和软件实现,硬件实现包括射频模块的控制电路选择和GSM模块的控制电路选择,软件实现包括数据库的设计等。跨越性地实现了旅行箱与手机终端进行通信的可能性,具有适用性广的特点,如出差、旅行等,并且适用对象范围广,如学生、老人、年轻人等。此外,程序采用模块化和标准化设计开发,有利于程序的升级及移植,具有较高的实现价值及应用前景。
参 考 文 献[1]崔俊杰,谭或.基于ARM的车辆转向控制系统的研究[C]中国农业大学工学院,北京(100083)[2]李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2005年[3]谭浩强.C语言程序设计(第二版)[M].北京:清华大学出版社,1999年[4]杨磊.RFID读写器设计[EB/OL].北京:中国科技论文在线[2008-08-18][5]上海贝尔公司.AT命令手册(V2.0).上海:上海贝尔公司,2001