导言
射频辨认(Radio Frequency Identification,RFID)作为一种非触摸式的主动辨认新技能,近年来得到了敏捷的开展并逐渐走向老练。其原理是依据无线射频信号的传输特性,进行非触摸式主动辨认,然后主动辨认被标识目标,获取对应数据进行交流。最常见的辨认方法是一个串行存储号码辨认一个人或物体。在此介绍一种依据RFID和单片机技能的智能语音播报体系,可广泛应用于旅游景点自助导游、博物馆自助解说、公交车站主动报站等场合。
1 体系总体规划
本体系由两大部分组成:RFID电子标签和智能终端。RFID电子标签内部由RFID晶片和外界线圈组成,每张电子标签有仅有的ID号。智能终端首要包含AT89S52单片机、最小体系电路、RFID读卡器、语音模块等。其间语音模块由WT588D语音芯片、编程器和用于语音下载、编程、形式设置的上位机软件WT588D VioceChip组成。体系全体框图如图1所示。
智能终端在有用读取范围内检测到RFID电子标签时,发生串行中止,单片机经过RXD引脚读取并存储电子标签ID值,然后查询与读取的ID号对应的语音地址,单片机经过一线串口操控形式操控语音模块完结对应语音信息的精确播报。
2 体系硬件规划
2.1 RFID读卡器模块DM-S28140
本体系选用中科鸥鹏公司的串口通讯版DM—S28140读卡器模块完结RFID电子标签的ID值的读取。DM-S28140读卡器具有低功耗被迫读取RFID标签、串口通讯、波特率为2 400 bps、输入使能答应软件启用或禁用等特色。能够读取EM4100无源只读系列125 kHz标签卡,每个标签包含一个仅有的标识符,由RFID读卡器读取后,经过串行接口传输。
2.1.1 读卡原理
当RFID读卡器作业时,读卡器的操控电路将电流注入线圈,发生低频电磁场。若RFID电子标签放置在有用读取范围内(10 cm内),电子标签的线圈就会感应低频电磁场,共振耦合发生电流,供给其晶片满足的电源,在充沛的电源供给下,晶片就能够将内存中仅有的ID信号转换成射频信号,传送给读卡器。只需有充沛的电源,电子标签就会继续不断地发送ID值。
2.1.2 硬件衔接
RFID读卡器串行接口版别能够与微操控器仅用4个信号(VCC、/ENABLE、SOUT、GND)互连。读卡器外观及引脚功用如图2所示。其间,SOU T衔接到AT89S52的P3.0(RXD)引脚完结串口通讯,使能引脚/ENABLE由P3.2操控。
AT89S52与WT588D的衔接如图3所示。挑选AT89S52 P1.4引脚衔接AT89S52 RESET操控复位信号,AT89S52的P1.5引脚衔接P03作为数据输出端,挑选PWM音频输出方法,PWM引脚接至扬声器。
2.1.3 通讯协议
当RFID射频辨认卡开端作业时,且RFID标签放置在有用读取的范围内,仅有的ID以12位ASCII字符串方法发送给主机,如图4所示。
其间,开始位和中止位有助于辨认一个正确的接纳信息串,中心10位是实践标签仅有ID号。
2.2 语音模块
语音模块包含16个引脚的语音芯片WT588D、一个对语音模块进行语音下载的编程器和上位机软件Vioce Chip。WT588D语音芯片是一款可重复擦除烧写的语音单片机芯片。表1为各个引脚的功用描绘。
图5为一线串口操控形式时序及电平占空比示意图。配套WT588D VioceChip上位机操作软件可随意替换WT588D语音单片机芯片的任何一种操控形式,把信息下载到SPI-Flash上即可,可操控220个语音地址,每个地址位能加载组合128段语音。支撑DAC/PWM两种输出方法,PWM输出可直接推进0.5W/8Ω扬声器。支撑加载WAV,音频格式,以及MP3操控形式、按键操控形式、一线串口操控形式、三线串口操控形式。本体系选用一线串口操控形式接纳待组成的文本,直接组成为语音输出。
一线串口只经过一条数据通讯线操控时序,依照电平占空比不同来代表不同的数据位。先拉低RESET复位信号5 ms,然后置于高电平等候17 ms,再将数据信号拉低5 ms,最终发送数据。高电平与低电平数据占空比为1:3,代表数据位0;高电平与低电平数据位占空比为3:1,代表数据位1。高电平在前,低电平在后。
3 体系软件规划
3.1 主函数及语音编程
软件体系首要由主函数main、读卡函数getRFID()、语音播映函数Send oneline(uint8_tcmd)组成。主函数完结体系初始化(界说标签卡ID数组)、调用读卡函数完结标签卡ID信息的读取、查询ID卡号对应的语音地址、调用语音播报函数完结信息的精确播报。流程图如图6所示。
值得注意的是,播映的语音有必要下载到语音芯片SPI-Flash存储器中,经过语音编程器及VioceChip上位机软件进行语音模块的编程(即语音的装载、形式设置等),编程流程如图7所示。
语音下载后,须将语音地址与下载的语音文件一一对应起来,这是单片机读取语音而且精确播报的重要参考点,语音地址对应联系如表2所列。
3.2 读卡功用的完结
读卡函数getRFID()程序流程图如图8所示。首要进行UART初始化,当读卡器检测到标签卡时发生串行中止,依照12位通讯协议按位读取数据,直到接纳到中止位0x0D完毕。
截取有用数据后4个字节,有用数据是指每个字节的巨细在指定范围内(即0x30~0x46),对应字符为0~F,程序中只需要0x0D(中止字节)前的4个字节。
例如这4个字节分别为0x41、0x32、0x36、0X46,对应的字符为A26F,转换成十进制数,则数值等于41 583。因而,主程序界说的标签卡数组元素应为每个标签卡后5位十进制ID对应的十六进制数。
3.3 语音播报功用的完结
依据图3和图5,语音播报函数Send_oneline(uint8_tcmd)程序流程图如图9所示。函数中的形参cmd即语音的地址。
结语
本文运用AT89S52单片机、DM-S28140读卡器和WT588D语音模块,合作RFID电子标签,完结了智能语音播报体系。
实践证明,此计划可行而且牢靠,可用于旅游景点自助导游、博物馆的自助解说、公交车站智能报站等场合,具有较高的实用价值。