单位文秘网 2021-10-06 08:11:47 点击: 次
摘要:针对语音传输过程中的丢包问题及AMBE-1000芯片和CC2430芯片的工作原理与特点,设计出了一种基于AMBE-1000和CC2430的无线语音通信系统。系统采用AMBE -1000 与CSP1027-S进行语音信号的处理;同时,采用CC2430传输数字化后的语音信号;在整体上,采用AT89C52处理器负责接口之间的数据处理。实现了基于AMBE-1000的低速率语音通信,该文采用改进的多带激励(MBE)算法,能实现可变速率低比特率、高语音音质的语音压缩编码。重点讨论了系统结构、硬件软件设计和协议栈开发等关键问题。说明了在ZigBee网络中进行语音通信的可行性及其发展潜力。
关键词:无线语音通信;ZigBee;语音编解码
中图分类号:TP93文献标识码:A文章编号:1009-3044(2011)31-0000-0c
The Design and Implementation of the Wireless Voice Communication System Based on ZigBee
WANG Fang
(Information Engineering College of Northeast Dianli University, Jilin 132012, China)
Abstract: This article introduces the characteristics and working principles of AMBE-1000 by Digital Voice System Inc and CC2430 by Chipcon respectively. It also discusses an implementation of the wireless voice communication system based on AMBE-1000 and CC2430.This system mainly uses AMBE-1000 together with CSP1027-S to process digital voice and use CC2430 to transmit digitalized voice signals.AT89C52 controller is adopted for data communication. This system realized a voice communication system based on the AMBE-1000,this chip uses the MBE algorithm to obtain low changeable communication rate, and high speech quality .The design of system structure ,hardware, software and protocols was discussed in detail. The feasibility and potential of voice communication on ZigBee was therefore proved.
Key words: wireless voice transmission; ZigBee; speech encoding and decoding
无线语音传输中,采用ZigBee技术的低速率语音编码技术进行语音传输比语音信号模拟传输有诸多优点[1-3]。语音信号处理是现代通信中不可或缺的组成部分,随着对通信质量要求的越来越高,需要用尽可能低的数码率来获得尽可能好的合成语音质量。本文主要研究的是基于AMBE-1000语音模块在ZigBee技术中的应用,详细阐明了整个系统结构、硬件、软件设计。实验结果表明,该方法较好的解决了在无线ZigBee语音通信传输过程中的丢包问题,使丢包率降到最低,语音通信的效果达到最佳。
1 系统结构
1.1 系统图与原理
AMBE-1000包括两个独立组成部分:编码器和解码器,如图3所示。编码器接收8kHz抽样语音数据流,在片内实现语音编码(可以是16位、8位A律或8位μ律),由软件控制输出信道数据的速率;解码器则接收信道数据并合成语音数据。编码器和解码器的接口时序是完全异步的。整个系统由语音数据采集单元、语音编解码单元、时钟电路和单片机(AT89C52)组成,如图1所示。模块工作可分为两个过程:压缩过程和解压缩过程。语音的无线传输以MCU微控制器和射频收发模块为核心,辅以外部的放大器、滤波电路、音频编解码器来实现,语音的6个字节数据通过串口发送到CC2430射频模块中,通过无线将数据发送出去实现对讲功能。
图1 无线语音通信模块框图
1.2 系统模块之间的接口方式
AT89C52控制器和AMBE-1000通讯接口类型可以是并行主动模式、并行被动模式、串行主动模式或串行被动模式。在使用Intel标准总线控制器时,推荐采用并行主动模式。接口方式如图2。
图2 ZigBee语音通信系统之间的接口方式
2 系统的设计与实现
2.1 硬件设计要点
2.1.1 AMBE-1000的芯片特点及工作原理
根据对语音构成的分析,应运而生了多种对音频信号的压缩编码算法,如CELP、RELP、VSELP、MP-MLQ、LPC-10、MBE等,它们通过不同的算法,实现对音频信号的压缩。这些压缩编码算法的压缩率、语音质量各有所长,其中美国DVSI(Digital Voice System Inc)公司提出的先进多带激励AMBE(Advanced Multi-Band Excitation)压缩编码算法是其中的杰出代表。AMBE是基于MBE技术的低比特率、高质量语音压缩算法,具有语音音质好和编码速率低等优点。 AMBE-1000是一款高性能多速率语音编码/解码芯片,语音编码解码速率可以在2400~9600bps之间以50bits的间隔变化,即使在2400bps的时候,仍能保持自然的声音质量和语音可懂度。在芯片内部有相互独立的语音编码单元和解码单元,可同时完成语音的编码和解码任务。并且所有的编码和解码操作都能在芯片内部完成,不需要额外的存储器。这些特性使它非常适合于数字语音通信、语音存储以及其它需要对语音进行数字处理的场合。工作原理如图3。
图3 AMBE-1000接口原理
2.1.2 CC2430射频模块的特点及硬件设计图
图4 核心板CC2430原理图
CC2430[4-5]具有与ZigBee/802.15.4全兼容的硬件层、物理层。CC2430采用0.18μmCMOS工艺生产;在接收和发射模式下,电流损耗低于27mA或25mA。CC2430的休眠模式和转换到主动模式的超短时间特性,特别适合于那些要求电池寿命非常长的应用场合。
CC2430的主要特点如下:高性能和低功耗的8051微控制器核;集成符合IEEE802.15.4标准的2.4GHZ的RF无线电收发机;优良的无线接收灵敏度和强大的抗干扰性;在休眠模式时仅0.9μA的流耗,外部的中断或RTC能唤醒系统、在待机模式时仅0.6μA的流耗;硬件支持CSMA/CA功能;较宽的电压范围(2.0~3.6V);数字化的RSSI/LQI支持和强大的DMA功能;具有电池监测和温度监测功能;集成了14位模/数转换的ADC;集成AES安全协处理器;带有两个强大的支持几组协议的USART以及一个符合IEEE802.15.4.2规范的16位MAC计时器和两个8位计时器。
2.1.3 语音模块A/D—D/A 接口电路设计
A/D-D/A芯片的选择对所设计的系统的声音质量起着关键的作用。由于 A律或 u律压扩芯片在采样时做了压缩以减少位数,从对声音质量的考虑上,建议采用 16位线性的芯片。选择芯片时要特别注意信噪及滤波器的频率响应特性。 A/D-D/A的硬件接口是很灵活的。时钟和激励信号可以由外部送入也可以由内部产生。给可编程A/D-D/A控制字需要一个额外的接口。
图5 ZigBee语音模块核心接线图
2.2 软件设计与实现
2.2.1 ZigBee语音模块之间的标识处理
ZigBee 设备有两种寻址方式,分别通过64位的地址和16位的网络地址来寻找网络设备。一般来说,IEEE地址是固定的,而网络地址则是在组网时随机分配的。因此要对特定设备通信,必须用IEEE地址,但是在进行语音通信时,为了简化传输数据,一般采用16位网络地址寻址。这就需要在第一次通信时知道IEEE地址的前提下,获取设备的网络地址;以后采用网络地址通信。这部分工作通过 Chipcon的 ZigBee协议栈实现。程序由于篇幅关系省略。接收数据时,首先射频发射芯片监听信道中的数据,通过判断数据是否发送给该设备。如果是,则读取该数据到接收 FIFO,然后触发,通过 SPI 总线将数据发送到MCU;通过MCU处理,去掉各层的帧头,最后将数据存放到指定语音传输系统硬件电路的缓存区中[6]。
2.2.2 ZigBee网络拓扑
ZigBee网络通常分为星状拓扑、点对点拓扑和网状网络。本系统采用的是星状拓扑结构,在星状拓扑结构中,所有终端设备都与唯一的中央控制设备—PAN协调器通信,终端设备之间的通信通过PAN协调器通信,终端设备之间的通信通过PAN协调器的转发来完成。终端设备可以是通信的起点或者是通信的终点,也可以是两个设备之间通信的转发设备。在星状网络中,PAN协调器一般使用持续供电,而其他设备采用电池供电。星状网络适合家庭自动化、PC机的外设以及个人健康护理等小范围的室内应用。
构建星状网络时,最先启动的FFD自认为是PAN协调器,并选定一个与其覆盖区域内的其他PAN不同的标识作为自身的PAN标识。一旦指定了PAN标识,网络协调器就可以把其他FFD和RFD加入到网络中。
2.2.3 AMBE-1000语音模块的程序设计
AMBE-1000芯片的数据是以帧为单位,从应用的角度而言,将全帧进行传输可保留全部的状态信息,并使灵活性和功能有所提高;但本系统中,需考虑整个系统性能实现与效果,所以必须重组数据帧。若以全帧的形式进行传输,这些实际上无用的数据也会参与传输,每次传输(20m s次)的数据量将达到34字节,那么每1s需要传递的数据量为:34byte×8b its×50 times =13600 bits,这样,对于狭窄的信道根本无法进行传输。因此,从节省带宽考虑,必须对帧头和帧尾进行处理,并重组数据帧。为此,在发送程序的第一步先将AMBE-1000每20ms的语音数据存入一个缓冲区,去掉不必要的语音帧帧头、帧尾,得到纯语音数据;第二步再和串口1的数据综合打包,加上系统的帧头、帧尾;最后综合的数据流通过串口2进入各种信道行传输;接收程序反之,先对串口2收到的数据流进行判断:若有语音数据则将语音数据再添加必要的0字节数据和语音帧头、帧尾传给AMBE-1000进行解码;若有串口1的数据,就启动串口1的发送程序。实际上,接收时对音量等的调整操作也是通过在接收时对所加的帧头进行设置而实现的。
3 ZigBee协议栈移植
3.1 ZigBee协议架构
3.1.1 添加一个任务
整个协议栈是以一个OS贯穿的,我们要加入自己的应用,语音通信任务ID,在任务中执行,与协议栈实现无缝连接。在协议栈中的OSAL.C文件中,byte osal_init_system (void )函数的功能是初始化OS、添加任务到OS任务表中。在这个函数中通过调用osalAddTasks() 函数来定制项目所需要应用的任务,该函数属于应用层和OS之间的接口函数,一般项目的建立需要根据系统的需要自己编写函数,并将函数放到应用层。Void osalAddTasks()函数是通过osalTaskAdd() 函数完成任务添加,将支持协议栈功能需要的任务加载到该函数中。举例如下:
Void osalAddTasks(void)
{
osalTaskAdd(nwk_init,nwk_event_loop,OSAL_TASK_PRIORITY_MED);
osalTaskAdd(APS_init,APS_event_loop,OSAL_TASK_PRIORITY_LOW);
osalTaskAdd(ZDApp_Init,ZDApp_event_loop,OSAL_TASK_PRIORITY_LOW);
}
这些任务是协议栈运行的先决条件,为了更好的使用协议栈,建议将这些任务都添加到任务列表中。这些函数的参数条件在协议栈中已经定义好,可以直接使用。从上面加载的函数中可以发现,要建立一个单独的任务,必须先将osalTaskAdd() 函数所需要的参数条件定义好,这些参数分别是初始化函数SampleApp_Init,任务处理函数和任务优先级。
3.1.2 任务初始化函数
任务初始化函数的功能是将该任务需要完成的功能部件初始化,在每一个任务的初始化函数中,必须完成的功能是得到设置任务ID。
Void SampleApp_Init (uint8 task_id)
{
SampleApp_Init=task_id;
}
由于在这个任务中还有其他的功能,所以,我们对其他功能也需要做一定的初始化,包括对发送数据的设置。
4 结论与展望
通过实验验证,该系统能够实现实时语音的短距离无线传输,很好的解决了语音数据丢包的问题。得到了较好的语音效果。最后,本系统需更加完善的是树状网络路由算法的组建。
参考文献:
[1] 翟雷,刘盛德,胡咸斌.ZigBee技术及应用[M].北京:北京航空航天大学出版社,2007.
[2] 周怡,凌志浩,吴勤勤.ZigBee无线通信技术及其应用探讨[J].自动化仪表,2005,26(6):5-9.
[3] 殷明,汪立伟.基于ZigBee技术的通用无线通信模块设计[J].交通与计算机,2006,24(5):110-112.
[4] 王秀梅,刘乃安.利用2.4 GHz射频芯片CC2420实现ZigBee无线通信设计[J].国外电子元器件,2005(3):59-62.
[5] 敬朝晖,赵峰,朱庆源,等.基于IEEE802.15.4实现无线语音通信[J].信息技术, 2009(8):45-49.
[6] 徐正弟,庄弈琪,韦奋.基于ZigBee的语音通信技术[J].单片机与嵌入式系统应用,2007(3):77-79.
收稿日期:2011-08-09
作者简介:王芳(1970-),女,东北电力大学讲师,研究方向为通信技术。
(责任编辑:单位文秘网) )地址:https://www.kgf8887.com/show-116-94241-1.html
版权声明:
本站由单位文秘网原创策划制作,欢迎订阅或转载,但请注明出处。违者必究。单位文秘网独家运营 版权所有 未经许可不得转载使用