李奕颖, 刘忠富, 曾 黔, 杨清慧, 韩 敏, 李松霖
(大连民族大学 信息与通信工程学院, 辽宁 大连116600)
随着科技的发展与国民生产总值的日益提高,大家也越来越追求生活的质量,外出旅行已经成为普遍的消遣方式。 因此,研究一种集目前先进的自动识别技术、语音压缩技术、数码存储技术、无线传输技术于一体的智能导游系统势在必行。
本系统主要是应用射频识别技术(RFID),通过射频信号自动识别目标对象并获取相关数据,识别工作无需人工干预,可工作于各种恶劣环境。 该技术具有识别速度快、数据容量大、使用寿命长、应用范围广和标签数据可动态更改的优点。
系统采用射频原理识别标记对象,射频识别(radio frequency identification,简称为RFID)是一种非接触式的自动识别技术。 其利用射频信号通过空间耦实现无接触的信息传递[1]。 利用无线收发模块实现数据传递,STC89C52RC 单片机为核心处理器进行数据处理,再将数据信息通过液晶显示屏显示,语音模块进行播报,从而实现景区智能导游目的。
本景区智能导游系统主要由三部分组成,分别为微控制单元(MCU)、无线定位模块和语音播放模块。 每个景区的信息对应一个电子标签,而每个电子标签又分别与无线定位系统相连[2]。 单片机作为地址发射器的控制器,对无线模块进行设置处理,然后地址码信息被调制成射频信号后发射。 单片机对接收来的数据进行处理后,找出与之匹配的语音信息进行解码,语音模块对语音信息进行处理后,通过喇叭播放景区信息,基本上实现了智能导游功能[3]。 系统总体架构如图1 所示。
系统中微处理器采用STC89C52RC,因其构成的最小系统简单可靠,只要在其芯片上接时钟电路以及复位电路,最小系统便可以进行工作,时钟频率选用12 MHz。
无线收发模块采用nRF24L01 芯片,采用串行外设接口与MCU 通信。 nRF24L01 集成了所有与RF 协议相关的高速信号处理部分,可自动重发丢失数据包、自动产生应答信号。 通过软件来调节重发时间和次数。 无线收发模块原理如图2 所示。
图1 系统总体架构Fig.1 System overall design diagram
语音播放模块选用WT588D 语音芯片,采用PWM 外加喇叭来进行播放。 语音播放停止马上进入休眠模式,芯片转为完全停止状态。 主控单片机将从机发来的信息与内部数据信息进行匹配,找到对应景区的数据信息并发送给语音模块,并将景区信息转换成语音通过喇叭播放出来。 一个已加载语音可重复调用到多个地址,单个地址位最多可加载128 段语音,地址位内的语音组合播放,语音播放停止进入休眠模式,芯片转为完全停止状态[4]。 语音模块原理如图3 所示。
本设计采用LCD1602 作为显示模块来显示所处景点位置,共可以显示两行内容,每行16 个字符。主机和从机均设有液晶屏,用以显示景区信息并进行数据比较分析。 显示模块原理如图4 所示。
单片机工作时的电压为5 V,而语音模块和无线模块的工作电压为3.3 V。 为了让系统正常运行,需在输入端加入一个低功耗的电压调节器LM1117将5 V 电源电压转换成3.3 V 工作电压。 为了保证输出工作电压精确度在1%左右,需要在模块增加一个进行齐纳调节的带隙基准电压。 LM1117 控制电流大小,防止芯片过热影响现象[8]。 电源模块原理如图5 所示。
主机模块即为智能导游器,从机模块即为地址发射器。 关于主机模块的软件设计主要包括无线接收程序、语音控制程序以及显示程序三部分,实现数据的接收、处理以及显示功能。 从机模块分为无线发送程序和显示程序两部分,负责作为数据的发送端,带动整个系统的实现与运作。 从机将已有的地址信息通过无线发送模块发送给主机,主机的无线接收模块对数据进行初始化分析处理,然后显示在液晶屏上,通过语音模块播放出来。
图2 无线收发模块原理图Fig.2 Schematic diagram of wireless transceiver module
图3 语音模块原理图Fig.3 Schematic diagram of speech module
图4 显示模块原理图Fig.4 Schematic diagram of display module
图5 电源模块原理图Fig.5 Schematic diagram of power module
主机模块接受来自从机模块的地址信息,经过严格地处理分析实现语音播报功能。 主机模块系统首先对无线接收模块和LCD1602(显示模块)进行初始化,完成对主机无线接收模块的配置。 当主函数进入接受模式时,主机成功接收到新的数据,Busy值置为1,对信号的输出做出响应,以判断从机发送过来的地址信息。 主机模块软件设计如图6 所示。
图6 主机模块软件设计Fig.6 Software design of host module
2.1.1 nRF24L01 无线接受模块设计
本设计利用串口调试助手对无线模块进行工作模式的选择,在主机模块中,nRF24L01 充当接收模块,实现地址信息的接收功能。 定时对串口进行检测可实现系统的低功耗。 系统每隔5s 对串口进行一次检测,当串口无数据接收时,系统自动进入待机状态。
2.1.2 语音模块设计
语音播报系统使用上位机通过串口发送数据给单片机,以控制WT588D 语音模块进行语音播报。WT588D 语音模块采用一线串口控制模式,与单片机的端口直接相连,向单片机发送数据。 通过对数据中传递的地址信息进行分析处理,直接实现语音播报。 语音播报系统程序运行初始化后,通过串口检测上位机是否发送数据,若无数据则继续检测;否则执行相应的语音播报功能。 本设计中加入延时函数,设置不同的电平占空,不同的数据位有不同的比例。
2.1.3 显示模块设计
LCD1602 模块通过初始化函数、写数据函数、写命令函数、读形态函数以及读数据函数进行驱动。 其初始化包含LCD 的复位及关开显示,读写函数完成数据的处理工作,空闲状态检测利用读形态函数读入的形态BUSY 与RST 均为低电平,即检测到LCD 空闲,可写入显示数据。 在显示地址时,需要先输入字符地址,即告知在LCD 哪个位置显示信息。
从机的主要任务是给主机发送地址信息。 同主机一样,模块启动时, 需要对无线接收模块、LCD1602 进行初始化,经过初始化后完成对从机无线发送模块的配置。 在从机的主函数中,先对显示屏进行初始化设置,默认显示景区信息。 当有主机靠近从机的时候,从机调用无线模块子函数向主机发送地址信息,从而完成从机作为地址发射器的功能。 从机模块流程如图7 所示。
由初始化方式可以看到,接收与发射的设置基本一致,只是发射模式中多了2 个操作:设置TX 地址和设置重发次数。 发射与接收模式的不同体现在CONFIG 寄存器的设置不同,发射模式时寄存器的最后一位需要置0,接收时置1。
图7 从机模块软件设计Fig.7 Software design of plexus module
本系统在总结了前人设计经验的基础上,将RFID 技术完美的融合进智能导游系统,充分发挥出其在智能定位上的技术优势,结合微控制器与其它模块的连接,将其应用到景区智能导游上,对旅游业智能化发展起到了重要作用。