无线自组网语音通信终端设计*
2013-12-07王国富郑善友
王国富,郑善友
(桂林电子科技大学 广西无线宽带通信与信号处理重点实验室,广西 桂林 541004)
目前,国内的井下语音通信大多采用沟通效率较低的有线防爆电话或者成本高昂的井下3G通信[1]。由于在井下有线通信系统安装复杂,而且通话装置(如防爆话机)通常位置固定,从而造成了井下作业沟通效率的低下。国内中小型矿井众多,井下3G无线通信系统成本过高,很多企业无法承担架设费用。因此,对搭建灵活且功耗和成本低廉的语音通信装置的需求尤为迫切。
本文使用新兴的短距离、低复杂度、低功耗、低数据速率、低成本的ZigBee技术[2]以及具有高压缩比和高还原音质的语音压缩算法IMA-ADPCM,解决了以往井下语音通信设备成本昂贵、使用不灵活、通信效率低的问题。经验证,本语音通信终端井下实测点对点稳定通信距离为28.76 m,语音信号传输误码率为1.95%,额定功耗为0.63 W。
1 系统方案和模块原理
1.1 语音终端设计原理
图1 语音终端硬件原理
本文设计的语音终端系统组成原理框图如图1所示。其工作原理是:声音信号由麦克风输入,由语音采集模块将之转换成数字信号;CPLD被设计成语音压缩和解压缩模块,负责对语音数字信号进行压缩或者解压缩处理。STM32W108是高性能的IEEE 802.15.4无线片上系统(SoC),集成2.4 GHz IEEE 802.15.4兼容的收发器以及基于ZigBee系统的外设,是本系统的核心,负责数据的交互和ZigBee应用程序管理[3]。数据由STM32W108的ZigBee外设发出,再经过2.4 GHz射频放大模块进行功率放大,最后辐射到信道中。这样做目的是增加信号强度和提高有效通信距离。当接收语音信号时,语音数据经过CPLD进行解压缩后,经由语音播放模块输出音频信号。
1.2 语音压缩及解压缩模块的设计
由于 ZigBee为低速率(<250 kb/s)无线网络技术,如果语音不经过压缩处理,则无法很好地适用于该技术。本设计采用IMA-ADPCM,即自适应差分脉冲编码调制算法,该算法压缩比为4:1,符合低空间消耗、高质量、高效率的要求[4]。为了降低核心MCU的负担,语音编解码的任务由CPLD承担。
IMA-ADPCM的编码过程如图2所示。IMA-ADPCM的关键点在于预测器的设计。该自适应预测器为8阶零极点后向序贯系统。而解码则是编码的逆过程,在此不再赘述。
图2 IMA-ADPCM编码器
预测输出值 Se(k)见式(1),其中 Sr(k-i)为极点滤波器的前N个重建信号,Dq(k-i)为L个量化后的差值信号,极点阶数 N=2,零点阶数 L=6。式中 ai为极点预测系数,bi为零点预测系数。如果需要提高预测器的预测增益,则可以使用次优化法对其进行自适应修正极零点预测系数。
基于CPLD的语音编解码模块的设计框图如图3所示。该模块由时钟模块、编码器和解码器、数据存储器以及中央控制单元构成。控制单元负责与STM32W108进行控制和数据交互。进行语音编码时,存储器存储ADPCM码数据,解码时则暂存PCM数据,数据经由控制元传输至STM32W108进行进一步处理。
1.3 语音编解码算法性能评估
图3 语音编解码IP核
为模拟真实通话环境,将普通语音录入PC,然后处理成采样率为 44.1 kHz、码宽为 16 bit、格式为 wav的音频文件。将wav文件导入Matlab中进行IMA-ADPCM进行编解码处理,将原始语音信号和解码还原后的语音信号进行比对和误码率计算,结果如图4所示。根据波形比对和人耳辨识,语音还原质量较高。经计算,本设计的语音编解码器的平均误码率仅为1.95%。
图4 原始信号与解码信号对比
2 组网节点分析和软件方案设计
2.1 组网节点分析
ZigBee网络设备类型主要有3种。第1种是网络协调器(Coord),其功能是发送网络信标,建立网络,管理网络节点,备份网络节点信息,搜寻一对节点间的路径[5]。而本设计中语音终端则被设计成第2或第3种设备,即全功能设备(FFD)或者精简功能设备(RFD)。FFD包含由标准指定的所有IEEE802.15.4功能和特性,在空闲时充当网络路由器,也能作为终端设备使用。由于矿井下通信的节点位置随机性高,为了保证其可靠性和稳定性,优先考虑将语音终端设计为FFD类型设备。为降低成本和复杂性,RFD只包含有限的功能,在网络中只能用作终端设备,RFD由于省掉了内存和其他电路,所以降低了ZigBee部件的成本。当然,在矿井下工作位置相对固定的情况下,边缘位置节点亦可以采用RFD类型的设备以达到节约成本的目的。
本设计采用的网络拓扑类型为网状网,通用情况下所有节点类型的组网如图5所示。其中节点4为FFD类型设备,节点7为RFD类型设备。当节点4和节点7加入网络时,可能产生可用的新路径如图中虚线所示。此时,假定节点8向节点2发起通信,则路由器算法根据每个节点的路由表项信息搜索新的最佳路径,路径 8、7、6、5、2(方向从左到右)已经过时,最优新路径 8、7、4、2(方向从左到右)将被采用。
图5 网络拓扑结构和节点入网示意图
2.2 组网软件设计分析
系统软件设计如图6所示。系统初始化完毕后,将会对本地设备类型进行检测并转向相应类型设备的处理。
图6 系统组网软件流程设计
如果设备是网络协调器,则主动进行该区域的网络组建流程,直至自组网建立成功方可对网络状态进行监控。当协调器检测到新节点加入网络的请求时,会转入节点入网处理。协调器还具备数据上传功能,即可以上传语音数据和网络信息到指定地面上的PC。
如果设备是FFD类型设备,则该设备可以充当路由器使用,初始化路由并发送加入网络请求。路由初始化成功后,FFD终端即可中继数据或者充当目的节点接收语音数据以及进行播放处理。最后一个分支是识别RFD设备,此时RFD设备成功入网后只可作为网络边缘节点,只具备语音收发播放功能而不可充当路由器使用。
3 实验结果
3.1 额定功耗测试
测试方法为在保持组网状态下,分别对随机抽取的20台语音终端进行工作电流采样测试并得到20个样机电流数据 I1,I2,…,I20,由于样机额定电压为 Ue=5 V,取平均值作为额定功率,可由下式得到:
经过计算,终端机额定功率为P=0.63 W。
3.2 通信距离实地测试
测试环境分别为长度约为300 m巷道及开阔地面,测试方法为节点间点对点通信,以人耳辨识语音间断现象严重时的节点间直线距离为通信距离。测试结果如图7所示,地面平均通信距离为41.27 m,巷道平均通信距离为28.76 m。表明在井下狭长巷道导致通信距离相对地面开阔环境通信时大幅缩短。
图7 通信距离测试
丢包率测试选定测试环境为长度300 m左右的巷道,测试方法为调整节点间距离并发送固定长度的语音数据进行点对点通信。丢包率计算为n=100-接收数据量/发送数据量。测试结果如图8所示,从图中可看到,当节点距离增加到接近极限距离时,通信几乎失败。以丢包率为50%为临界点,可靠通信距离应控制在27 m以内。
图8 丢包率测试
本文针对常规井下语音通信效率低或者系统搭建成本过高的缺陷,提出使用先进的ZigBee网络技术进行语音通信的方案。针对ZigBee技术由于传输率低而无法适应语音即时传输的问题,提出了使用高压缩比的IMAADPCM语音压缩算法对语音数据进行压缩后传输,既保证了语音信号质量也达到了低速率传输语音的目的。实验表明,本设计具备网络自能特性,额定功耗为0.63 W,符合低功耗应用场合,在矿井下通信中具有广阔的应用前景。
[1]汪海涛,曹娜.浅谈基于 TD-SCDMA技术的 KT151无线通信系统在煤矿中的应用[J].Intelligent Building&City Information,2011(9):15-17.
[2]TOULOUPIS E,MELIONES A,APOSTOLACOS S.Speech codecs for high-quality voice over ZigBee applications:Evaluation and implementation challenges[J].IEEE Communications Magazine,2012,50(4):122-128.
[3]沈建华,郝立平.STM32W无线射频ZigBee单片机原理与应用[M].北京:北京航空航天大学,2010.
[4]GAWALI D,VARMA N.Design and implementation of ADPCM based audio compression using VHDL.2012 International Conference on Information and Network Technology(ICINT 2012),IPCSIT vol.37[C].Singapore:IACSIT Press,2012:246-250.
[5]MAHMOUD A Q,JEEDELLA J,MAJID S.An integrated wireless indoor navigation system for visually impaired[J].Systems Conference(SysCon),2011 IEEE International,4-7,2011(4):17-23.