基于语音识别的无线测量工程小车
2013-09-30刘关关陈莉华汪炳星周双京
刘关关 陈莉华 汪炳星 周双京
[摘要]本设计是为探测不适合人工作业的特殊环境下温度、光强、声音等各种参数值而设计的一款基于语音识别的无线测量工程小车。远程小车端通过多个传感器采集环境数据到远程小车上的MSP430里,再由远程端MSP430将数据无线传输给终端控制平台的MSP430,终端MSP430与PC交互信息,最终实现PC实时显示测量的环境参数值。经过方案反复验证,本设计同时具有语音识别率高、无线传输性价比高,和实时在PC实时显示测量数据等优点,实现的语音控制效果好、数据采集精确度高、人机界面好。
[关键词]语音识别,无线测量,传感器,SPCE061A,MSP430,工程小车
[中图分类号]TN912 [文献标识码]B [文章编号]1672-5158(2013)06-0267-02
0 引百
随着语音识别技术和无线传感器技术的迅猛发展,将两种技术结合应用于特定区域环境探测已是一种必然的趋势。其中,无线传感器技术的发展克服了探测复杂地域环境时有线铺设的困难;语音技术的应用在使探测设备易用化的同时增强了人机交互性。可以说,两种技术的应用顺应了现今探测产业发展的潮流。
总体来说,基于语音识别的无线测量工程小车是为应对探测不适合人工作业的特殊环境下温度、光强、声音、温度等各种参数而设计的。
1 硬件设计
该工程小车系统主要包括多个传感器模块,远程端MSP430及相关驱动模块,无线模块,终控端MSP430及相关模块,语音模块。通过传感器模块实现了温度、光强等数据的采集;通过远程端MSP430控制驱动电路模块,实现小车的运动;通过无线模块,实现了远程端和终控端的无线数据交换;通过语音模块和终控端MSP430,实现语音输入识别的功能;通过终控端MSP430和HPC串口通信,实现人际界面的友好化。
其硬件设计总体框图如图l所示。
1.1 车体运动模块设计
车体运动模块中的小车为两轮结构,两轮分别由两个电机控制,在两个电机同时正转或反转时,分别实现小车前进或后退;当一个电机转,另一个不转(或转速相对慢的时候),实现小车的左右拐弯功能。其中,由于单片机端口驱动电流较小,所以单片机是控制电机驱动模块L298N模块来间接控制小车的运动。
小车的行走原理
直走:两个电机正转小车就会前进。
倒车:两个电机反转小车就会前进。
左转:左边电机不转,右边电机转,小车就会左转。
右转:右边电机不转,左边电机转,小车就会右转。
1.2 传感器模块设计
远程端MSP430与超声波传感器:
通过超声波测距模块实现工程小车周围距离环境的探测功能。同时将超声波模块测得的数据给远程端MSP430处理,之后经由无线传输模块给终控端,并最终在上位机PC上显示。
远程端MSP430与光传感器的硬件设计:
利用光传感器模块实现对周围环境亮度和光强的测量,同时通过远程~MSP430将数据值给远程端的MSP430处理。而且该模块方向性较好,可以感知固定方向的光源。经反复试验,该模块可稳定良好工作。
远程端MSP430与声音传感器的硬件设计:
该部分硬件电路利用声音传感器将收集到的声音,经过放后输出到模拟输入端口上,这样当周边环境有声音的情况下,声音传感器的模拟输入端口上就能感知到电压的变化,说话声音越大,电压变化的幅度越大。由于声波是不断变化的,在模拟输入端口上读出的值相应地也是变化的,从而根据某个时间点上读出的值来对声音进行判断。
1.3 无线通信模块的硬件设计
该部分通过远程端MsP430和nRF24L01的模块连接,从而实现与终控端的nRF24L01数据交换并传给终控端MSP430,再由终控NMSP430传给上位机,在Pc显示传感器的数据值,从而可以直接无线读出数据值。
2 软件设计
系统软件设计总体方案分为两个部分:远程端程序设计和终控端程序设计。
远程端MSP430程序设计主要包括:系统的初始化,主要包括传感器的初始化、无线模块NRF24L01的初始化;数据采集、处理和存储以及发送;数据的接收控制。终控端程序程序设计主要包括系统初始化,主要包括MSP430串口程序的初始化、凌阳单片机的初始化、无线模块NRF24L01的初始化;数据的发送与接收;MSP430单片机和PC机串口的通信。
远程端MSP430与传感器的程序设计:
远程端MSP430与传感器程序设计为顺序结构,即读取温度传感器的值,存储温度的值;读取光传感器的值,存储光传感器的值;读取超声波传感器的值,存储距离的值;读取声音的有无,存储声音的数据。
远程端MSP430与无线模块的程序设计:
远程端MSP430与无线模块的程序设计采用了双向传递数值的设计方法。一方面MSP430控制NRF24L01发送传感器数值给终控端,另一方面,MSP430从NRF24L01中读取小车的运动指令。
终控端工程小车的软件程序:
终控端MSP430与无线模块程序设计:
终控端MSP430与无线模块之间的程序设计也采用了双向设计的原则。一方面,MSP430从NRF24L01中读取传感器的值;另外一方面,MSP430控制NRF24L01向小车发送指令。
终控端MSP430与PC串口程序设计:
终控端MSP430与PC串口程序设计采用单向数据传输方式。首先对MSP430的串口通信模块进行初始化;然后,判断是否接收到数据,如果存储数组有数据更新,则启动串口模块向PC上位机发送数据。
语音录制、识别、播放的程序:
语音识别主要分为“训练”和“识别”两个阶段。在训练阶段,单片机对采集到的语音样本进行分析处理,从中提取出语音特征信息,建立一个特征模型;在识别阶段,单片机对采集到的语音样本也进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。
3 总结
本设计通RSPCE061A的语音识别模块、MSP430的超低功耗特点、传感器的高精度特性、无线模块的双工通信和PC终端人机界面显示,实现了无线语音控制小车和无线数据PC实时观察等多项功能。语音识别功能主要一方面利用了SPCE061A硬件的较高的执行速度、内置的硬件乘法器、ADC和IDAC功能和内置的AGC自动增益环节的特点;另一方面利用SPCE061A软件程序可使用标准C语言编程和内嵌丰富的语音资源函数的特点。无线数据的稳定传输一方面依靠无线模块的稳定性,另一方面依赖了MSP430开发环境中精简c代码的编写算法。
参考文献
[1]何立民主编,单片机应用技术选编[M],北京:北京航空航天大学出版社,2005
[2]李晶皎,嵌入式语音技术及凌阳16位单片机应用[M],北京:北京航空航天大学出版社,2003:6-8