一种无线传感网络的语音会议系统设计

2014-09-25 03:05黄辛超
单片机与嵌入式系统应用 2014年2期
关键词:话筒传感音频

黄辛超

(上海海关学院科技处,上海201204)

引 言

在一些多人参与的会议中,尤其是大型会议,需要相当数量的话筒确保与会者的发言需求。一般做法是使用有线设备将各个话筒手拉手串联起来,再连接到汇聚节点,最后接入音箱或者扩声系统。当与会人员数量较大时,布线工作会非常复杂,尤其是在一些临时会议场所,会大大提高工作量。此时如果使用无线话筒,由于话筒数量有限,无法做到人手一个话筒,既耽误时间,也浪费人力传递话筒,导致会议效果较差。

而无线传感网络的优点刚好可以弥补了常规做法的不足,可以将每个与会者使用的话筒作为一个无线传感网络的节点,每个话筒通过无线传感网络上传声音数据至汇聚节点,汇聚节点再将声音数据发送到扩声系统。同时,由于无线传感网络的数据传输是双向的,可以将汇聚节点发送的数据准确传递到每个节点,用此功能可以实现需要同声传译的会议系统中。将翻译人员使用的话筒作为一个节点加入系统中,这样翻译人员的声音数据就发送到每个与会者的话筒中,与会者可以通过耳机选择一路频道进行收听。由于每个节点之间是对等网络,可以相互传递数据,这样可以有效解决部分节点因为和汇聚节点相距太远,或者有障碍物阻塞而导致无法上传声音信号的问题。

1 无线传感网络简介和特点

无线传感器网络WSN(Wireless Sensor Network)是一种由传感器节点构成的网络,能够实时地监测、感知、采集节点部署区的观察者感兴趣的感知对象的各种信息,并对这些信息进行处理后以无线的方式发送出去,通过无线网络最终发送给观察者[1]。

无线传感网络有以下几个特点[2]:

①在无线传感器网络中不存在严格的控制中心,整个无线传感网络是一个对等式网络,网络中的每个节点都可以随时加入或离开网络。

②网络的布设和展开不需要依赖于其他预设的网络设施,节点可以通过分层协议和分布式算法协调各自的行为,节点启动后可以快速、自动地组成一个独立的无线网络。

③无线传感器网络中没有专门的路由设备。节点的多跳路由是由普通网络节点完成的,每个节点既可以发送信息,又可以转发信息,可以有效避免部分节点无法与路由通信的问题。

④无线传感器网络是一个动态的网络,节点可以随处移动,既可以因为某种原因退出网络运行,也可以由于某种原因新加入到网络中。网络结构可以动态变化,非常灵活。

2 系统结构设计

系统结构图如图1所示。每个与会者的话筒作为无线传感网络的一个节点,如图1中左边的圆形示意图,每个节点可以直接和汇聚节点通信,部分节点(可能因为距离过远或者被障碍物阻挡)无法直接和汇聚节点通信,可以通过其他中间节点(图中黑色节点)转发而间接与汇聚节点通信,甚至经过多级子节点的路由最后到汇聚节点。汇聚节点将子节点发送过来的声音信号经过音频解码后传输到扩声系统。同时,当部分会议系统需要同声传译时,系统中还会存在同声传译的子节点,同声传译节点作为一个特殊的子节点,将翻译数据直接发送给汇聚节点,再由汇聚节点转发给各个子节点。子节点根据用户的需求选择对应的语言,受到ZigBee的带宽限制,能支持同声传译的通道数目是有限制的。

图1 系统结构图

3 子节点的硬件设计

子节点的硬件设计如图2所示。上行通道中,声音首先经过麦克风转换为电信号,然后进行A/D采样,上传给CPU再转发给音频编码,编码后回传给CPU,最后通过无线传输网络ZigBee传送给汇聚节点;下行通道刚好相反,无线传感网络将汇聚节点下发的数据经过CPU给音频解码部分,完成解码后CPU再次转发给DAC进行数模转换,最后经过信号放大以后输出到耳麦。各个系统的节点通过电池供电,这样可以方便每个节点的任意移动,增加系统的灵活性。

3.1 CPU、无线接收模块和音频编码模块的实现

该部分选用了美国CEL公司的MeshConnectTM系列ZICM2410模块,其内核芯片ZICM2410是一个真正的单芯片解决方案,遵从ZigBee规范和IEEE 802.15.4标准,它由一个含有基带MODEM的射频收发器、硬连线的MAC和内嵌8051内核的微控制器(带有内部Flash存储器)组成,包括多个通用I/O引脚、定时器、UART,SPI等,以及硬件语音编解码器。独有的I2S/SPI/UART音频输入/输出接口,结合其扩展的500kbps或1Mbps的无线传输速率,可以满足广大的无线语音应用[3]。该芯片具有集成度高、外设接口丰富、功耗低的特点,工作电压为3.3V,非常适合无线模块的使用,尤其是低功耗的特点,非常适合电池场景使用,方便移动。

图2 子节点硬件结构图

ZICM2410芯片结构如图3所示。在ZigBee数据速率(250kbps)下所体现出的卓越射频性能,完全能满足经过压缩编码的语音带宽要求。CEL向客户提供作为部分软件库的CEL ZigBee栈,CEL还可提供开发定制的应用程序所需要的硬件和软件工具。

图3 ZICM2410内部结构图

ZICM2410还具有一个集成的PCB板载天线,由于CEL的ZIC2410IEEE 802.15.4/ZigBee收发器能提供106dB的工业顶级链路预算,因此,即使没有外部功率放大器,MeshConnect仍可以维持远距离的无线连接(3 000 ft无障碍距离),在无需外置天线的情况下能满足一般会场的要求,进一步增加集成度,减小终端的复杂度和体积。

ZICM2410还有支持三种语音编码解码算法:μ-律、a-律和ADPCM,非常适合语音会议系统的需求,可以进一步提高集成度、降低功耗。此外还对外提供非常丰富的外部接口,包括UART1、UART2、I2S、SPI、22个GPIO、4路ADC和I2S接口。

3.2 上行通道系统的硬件实现

声音首先通过麦克风转为电信号,因为麦克风输出的信号很小,所以要通过一放大器放大,其电路部分如图4所示。

图4 音频信号放大电路

声音从麦克风输出经过C1耦合到运算放大器的负向输入端,经过第一级反向运算放大器放大,再通过第二级反向放大器放大后通过一电阻输出最后给ADC采样。

其中R7、R6分压以后向运放提供一个参考电压,为了电压更稳定在R6两端之间加一滤波电容。R12、R13为麦克风提供一偏置电压,同样加C13、C16两滤波电容以提高稳定性。R8、C18组成运算放大器的反馈阻抗,同时也是一低通滤波器,这样可以有效地滤除高次谐波的混叠干扰。同样R17、C17的效果也一样。C14也是一个低通滤波器,滤除高次谐波的干扰。

信号经过放大后,输出给ADC进行采样、ADC选用ADSS8865,它是TI公司的一款低功耗、16位的ADC,在100ksps下只有0.65mW的功耗,非常适合电池供电场景使用,其参考电压和模拟电压都是3.3V。通过SPI接口与CPU连接。其连接示意图如图5所示。ADC的模拟电源、数字电源、参考电压都是电源直接输入3.3V。

图5 ADC采样电路

ADC将声音信号采样回来以后,首先通过SPI接口发送给CPU,CPU在转发给音频压缩模块,音频压缩模块编码以后通过CPU转发给无线发送模块,无线发送模块采用ZigBee协议转发到汇聚节点。

3.3 下行通道硬件系统的实现

子节点通过ZigBee模块接收汇聚节点的数据,经过音频解压后,CPU通过I2C总线通道发送给DAC进行数模转换,最后经过功放输出给耳机接口。DAC选用TI公司的PCM1774,PCM1774是一块16位DAC,最高带宽达到50kHz,工作电压在数字和模拟部分均为3.3V,与CPU系统和ADC保持一个电压供电,减小电源设计的复杂度。

PCM1774内部自带一个功率放大模块,可以直接输出到一般的耳机接口,减少功放模块的设计,进一步降低电路的复杂度。PCM1774支持SPI口和I2C总线口与控制器连接,由于CPU模块ZICM2410只有一个SPI口已经和ADC连接,此处DAC通过CPU的I/O口模拟I2C总线与DAC连接。其连接示意图如图6所示。同时PCM1774需要一路系统时钟,通过CPU的I/O口输出直接给PCM1774。

图6 下行节点硬件示意图

4 子节点的软件设计

每个子节点启动后,首先初始化,设置本节点地址,设置默认目标节点地址是汇聚节点,然后查找能否与汇聚节点连接。如果能连接则建立链接,并设置本节点可以与直接与汇聚节点连接,同时设置下一站的目标地址为汇聚节点,然后准备传输数据,如果有数据传输则将数据传输到汇聚节点。由于每个子节点可以是动态移动的,或者受外界因素干扰等,导致子节点的通信链路受阻,如果没有传输数据或者传输数据结束后,子节点再次扫描能否与汇聚节点连接,如此重复。

在扫描与汇聚节点连接过程,如果无法直接与汇聚节点连接,则尝试与周边节点建立链接,如果无法找到能到达汇聚节点的子节点,则直接返回查找汇聚节点,如此反复。

如果能找到周边可以与汇聚节点连接的子节点,则找一个能最快到达汇聚节点的子节点建立链接,然后设置本节点可以到达汇聚节点,并设置到达汇聚节点需要跳跃子节点的跳数,然后设置下一节点地址,准备数据传输,最后判断是否有数据传输。如果没有数据传输则子节点是动态的,返回继续扫描是否可以到达汇聚节点,如此循环下去。

如果有数据传输则判断是上行数据还是下行数据,如果是上行数据则直接转发至下一个站节点,如果是下行数据,则判断是否为传送给本机数据,如果是则进行音频解码最后直接输出至DAC输出。

由于每个子节点位置是动态的,所以在转发完数据或者解码输出给DAC完成后继续查找汇聚节点,如此反复。整个软件流程图如图7所示。

图7 子节点软件流程图

5 汇聚节点和同声传译节点设计

汇聚节点与子节点基本一致,只是硬件上数据转发传输能力比一般子节点大,软件上针对数据进行转发给所有与其连接的子节点,如果是子节点上传过来的数据则直接进行音频解码,最后通过DAC输出至音箱输入线路。同声传译节点和其他子节点硬件设计上是一致的。只是在使用过程中,如果设置为同声传译节点,软件处理上也有些细微差异。在此不做详细展开。

结 语

本文设计的系统非常适合用在一些临时大型会议场所,无线传感网络可以由很多节点组成,组网结构可以随时变化,而且节点之间也可以相互传送数据,有效地解决传送距离过远和部分死角位置无法传送问题。

本系统以集成CPU、ZigBee收发模块和音频编解码的ZICM2410为核心,ZICM2410有高集成度和低功耗的特点,使得硬件电路设计非常简单,非常适合移动的电池供电系统。

本系统随着子节点的增加,汇聚节点的任务非常艰巨,而且对稳定性也至关重要,所以在一些子节点过多的场景,可以考虑采用多级汇聚节点方式,同时汇聚节点采用网状相互备份方式组网,在部分汇聚节点异常情况下,可以通过其他汇聚节点来完成正常的通信。

[1] 姜连祥,汪小燕.无线传感器网络硬件设计综述[J] .单片机与嵌入式系统应用,2006(11):13-16.

[2] 马祖长,孙怡宁,梅涛.无线传感器网络综述[J] .通信学报,2004,25(4):114-124.

[3] 广州致远电子有限公司.ZICM2410-PO ZigBee网络通讯模块[EB/OL] .(2009-04-28)[2013-08-01] .http://wenku.baidu.com/view/d510ac21dd36a32d737581aa.html.

[4] 阚凤龙,阚洪亮,韩中华,等.ZigBee无线传感器网络在消防报警系统中的应用[J] .现代建筑电气,2012,3(11):11-14.

[5] 赵泽,崔莉.一种基于无线传感网络的远程医疗监护系统[J] .信息与控制,2006,35(2):265-269.

[6] 郑少雄.无线传感器网络在农业信息化中的应用研究[J] .教学技术与应用,2012(11):85-86.

[7] 阚凤龙,李江,袁乃起,等.基于ZigBee的环境监测系统设计[J] .科技广场,2012(10):63-65.

猜你喜欢
话筒传感音频
《传感技术学报》期刊征订
新型无酶便携式传感平台 两秒内测出果蔬农药残留
把话筒传给鹏鹏特
小话筒
简易无线话筒扩音系统设计及实现
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
IPv6与ZigBee无线传感网互联网关的研究
基于Daubechies(dbN)的飞行器音频特征提取
音频分析仪中低失真音频信号的发生方法
自制大话筒