如何运用RSC-3x开发出高性能的语音识别产品
摘要:本文给出了在运用RSC-3x设计高性能的语音识别产品时应考虑的与硬件有关的若干问题:噪音降除、电路设计、PCB设计、麦克风的选择、麦克风的安放、电源设计。
关键词: RSC-3x, 识别率,噪音降除,电路设计,PCB设计,麦克风,电源
RSC-3x是美国Sensory公司出品的交互式语音产品。它同RSC其他系列的产品一样运用神经元算法实现了语音识别的功能,在理想环境下,其识别率可达97%以上。并具有语音合成、录音回放、四声道音乐合成等语音处理功能。由于内含一个8位处理器,RSC-3x还可实现通用处理器的系统控制功能。RSC-3x的高性能和适中的价格使得它主要应用在消费类电子产品和价格敏感的家电产品上。
但是,如何才能运用RSC-3x系列产品开发出性能良好的语音识别产品呢?本文给出了在设计语音识别产品时应在硬件方面考虑的若干问题。
一、噪音降除
语音识别的准确率(简称识别率)会受到诸多因素的干扰而下降。一个导致识别率下降最常见的因素就是噪音:来自系统内部的电子噪音和麦克风所拾取的声频噪音。RSC-3x的一个主要革新技术就是在其片内加入了一个声频预放电路。来自典型的驻极体麦克风的电压信号只是毫伏级的,而能被RSC-3x使用的整个预放增益信号却要放大到200倍以上。通过RSC-3x内置的预放电路,只需外加少许的几个被动元器件就可以达到这个放大作用。良好的接地措施和消除模拟电路中的交叉干扰会进一步确保良好的识别率。鼓励用户大声说话和接近麦克风可以辅助获得良好的信噪比。
二、电路设计
图一是RSC-3x声频预放部分的参考电路。阻值为1.5K的麦克风电阻(Rx)对系统增益具有很大的影响,因此应根据麦克风的敏感度来决定其值的大小。图中的1.5K是典型值。
javascript:window.open(this.src);" style="cursor:pointer;"/>
下表所列为Rx和Cx的推荐值:
Rx | Cx |
1K | 0.01uF |
1.5K | 0.0068uF |
2.2K | 0.0047uF |
2.7K | 0.0033uF |
3.9K | 0.0027uF |
4.7K | 0.0022uF |
三、PCB设计
推荐使用带地平面的双面印制的PCB板。地平面应覆盖整个模拟电路区域而仅在RSC-3x附近接地。为减少交叉干扰,模拟地和数字地应尽可能地从物理上分隔开来。特别要注意的是:将高速时钟线(如地址线和数据线)远离麦克风元器件和电路。
每个数字IC都要在紧挨着VDD的地方接一个0.1uF的旁路电容,RSC芯片的每对VDD脚和VSS脚间都要接一个。该旁路电容应该是最大电压为50V的陶瓷电容。如果使用了3端稳压器(如7805),应在其输入/输出脚和地之间接近稳压器的地方接上钽旁路电容。
在使用电池的产品中,串接一个二极管以避免电池装反时损坏电路。
如果产品中除了RSC还有其他需要用到数字时钟的模块(如开关电源、LCD驱动器等),特别要注意防止这些信号进入到RSC的声频电路中去。
四、麦克风的选择
对绝大部分的产品来说,廉价的多向驻极体电容麦克风(最小敏感度为-60dB)就足够了。在有些应用中,信号与音频噪音来源于不同方向时,定向麦克风可能更适合些。由于定向麦克风的频率反应取决于麦克风与声源间的距离,这样的麦克风应谨慎使用。为得到最佳性能,语音识别产品应运用于安静的环境,说话人的嘴应与麦克风极为接近。 如果产品是为在嘈杂环境中使用而设计的,设计时要充分考虑周围环境的噪音。提高信噪比将有助于产品的成功。
五、 麦克风的安放
设计恰当的麦克风嵌入方式和选择性能一致的麦克风是重要的。因为对麦克风不当的声学布置会降低RSC-3x的识别率。麦克风元件有许多种可能的物理放置方式,但有的就会比别的性能更好效果更佳。为此,Sensory推荐了以下的麦克风放置方案:
首先: 产品中,麦克风元件应尽可能地接近外壳,应完全位于塑料外壳内。麦克风元件和外壳间不应有任何空隙。只要有空隙就会产生回音,从而降低识别率。
javascript:window.open(this.src);" style="cursor:pointer;"/>
其次:麦克风元件的前部应确保干净无污,以免干扰识别。麦克风前面的外壳上要保留直径至少为5mm的孔。如果一定要在麦克风的前面加塑料表面的话,塑料表面要尽可能地薄,最好不要超过0.7mm。
javascript:window.open(this.src);" style="cursor:pointer;"/>
三:如果可能的话,麦克风与外壳间应声音隔离。可以将麦克风用橡皮或泡沫等海绵物质包裹起来。这样做的目的在于防止由搬运或震动产品时产生的听觉噪音被麦克风采集。这种外来的噪音会降低识别率。
javascript:window.open(this.src);" style="cursor:pointer;"/>
如果麦克风从距离说话人的嘴15cm的地方移到距离为30cm的地方,信号功率就降低了1/4。高音和低音间的差别也大于1/4。RSC-3x提供了一个AGC(自动增益调节)来补偿太大或太小的声音信号。AGC在麦克风的预放内工作。如果超过了AGC的调节范围,软件会给说话人提供一个声音回馈,如提示“请说大声点”或“请说小声点”来提醒说话人。
六、电源设计
由于 RSC-3x工作时其语音识别电路要消耗约10mA 的电流,电源的设计在这里显得尤为重要。如果系统连续聆听寻找一个给定的词汇,那么在几小时内就能消耗完一个纽扣电池的电能,几天内消耗掉一个大容量的碱性电池的电能。因此如果产品需要识别器一直处于工作状态的话,系统应该采用市电供电。相反的,如果电源采用电池供电的话,那么产品大部分时间应工作于低功耗的“睡眠”状态,只在需要识别时被唤醒就行了。RSC-3x的唤醒可以通过按键或其他IO口事件或震荡器二的时钟倒计时来实现,但无法被麦克风采集到的语音信号唤醒。
使用市电供电时,在 VDD和GND间测得的市电电源波纹不应超过5mV。因此,需要在电源部分增加直流电源稳压器(如7805)来稳定电压。
综上所述,只要在硬件设计方面多加注意,就可以得到很好的信噪比,开发出高性能的语音识别产品。