1、2.4GHz 无线 Skype 电话的设计与实现摘要近来网络电话越来越流行,并逐渐成为一项新兴无线技术。在众多技术中,Skype 是当前最流行的软件之一。然而,传统的网络电话仍然需要有线的耳机话筒,而且话筒与运行 VoIP 软件的主机之间的距离极其有限。本文提出一种新式的网络电话无线 Skype 电话。它的核心技术是采用跳频技术的 2.4GHz 无线网络。这一网络系统包括软硬件的混合应用,可以分为两个部分:基站和手机。硬件部分分为三大部分:基带电路,射频(RF)电路和微控制器单元。另外在软件方面,通过 USB HID 驱动程序,第三方应用软件可以与设备通信并且将人机接口控制参数传递给 Skyp
2、e。考虑到所使用的 2.4GHz 频段与工业、科学、医学(ISM)共享频段相同,各种各样的其他应用如无线网络、蓝牙产品等也使用这一频段,为避免无线电干扰,我们设计时采用跳频技术。通过对测试结果的比较分析,我们的无线 Skype 电话在谈话时功率比蓝牙节约 13%,抗干扰能力也高 13%。此外,我们的无线 Skype 电话也可以通过它的手动设置装置拨号,不像蓝牙那样不能拨号。关键词:无线、网络电话、低功耗介绍随着因特网和宽带网络的快速发展,近年来通信业务的需求急剧增长。人与人通信的新趋势是通过 IP 传输语音,这是基于 VoIP 网络(也可称为网络电话技术) 。VoIP 应用越来越普遍,因为它可
3、以提供世界范围内的免费或是低价的通话服务。这些应用系统的主要功能一直以来都是提供便携可移动的设备以供通信,如今在支持同步服务如电话服务和流媒体服务方面也存在着巨大且不断增长的利润空间。与传统电话服务相比,VoIP 有着诸多优势,如多种技术的融合带来的灵活而且更加充实的交流体验。然而,许多 VoIP 应用都遭遇这样一个问题,即通话的质量随着网络状态的变化而变化。此外,由于防火墙或是其他设备的缘故,连接经常中断。我们选择 Skype作为应用平台,采用与 STUN(Simple Traversal of UDP through NATs (Network Address Translators)相似
4、的一项技术。这项技术辅助应用平台找出公共 IP 地址和 NAT服务类型。而且,Skype 有着更佳的兼容性,用户无须修改防火墙配置。Skype 是一款基于 Kazaa 结构体系的免费 P2P 软件,应用于网络电话技术和即时信息传输。它有一系列的产品,如 SkypeOut, Skype Voicemail, Skype for PocketPC。Skype 专注于开发 Skype API(Application Program Interface)使硬件设备和软件应用可以通过 Skype 的网络电话技术软件实现无缝整合,而不是致力于发展全方面的应用。目前已有许多应用产品开发出来,但都没有考虑到一
5、个重要因素实际互联网电话的可移动性。当前,实际互联网电话的代表产品是 USB 电话和蓝牙耳机。一般来说,USB Skype电话与运行 Skype 软件的 PC 间的距离非常短。使用蓝牙耳机的用户不能拨号,选择目标,或是进行其他复杂的操作。在本文中,我们提出一种新的网络电话方案,设计了一种工作于 2.4GHz 频段、便携式、低成本和低功耗的无线 Skype 电话。在所提出的系统中,我们结合了 USB 电话和蓝牙耳机的优点使其更加方便。为解决上述问题,我们采用客户-服务器模式,即采用一个基站作为手机和 PC 主机的通信接口。2.4GHz 的无线传输是用于在基站和手机之间传输话音数据和控制参数以扩展
6、工作范围。与蓝牙相比,Skype 手机上设计有按键,使其不仅可以接听还可以拨号。个人通信的一个必然要求是终端成本低。对大多数的开发商或供应商而言,蓝牙的知识产权(Intellectual Property)是一笔昂贵的开支。由于这个原因,我们开发 2.4GHz 的无线网络来实现这个系统并且仍然保持蓝牙的优点。和蓝牙技术一样,我们的系统为了避免其它信号的干扰,在接收或发送一个数据包后跳转至一个新的频率。此外,我们提出的系统还设计有专门的睡眠模式以减小功耗。从实际功率测量结果看,我们的系统比市面上的蓝牙耳机功耗节约了 13%。本文余下部分组成如下。在下一部分,我们提供这一系统架构的概要和工作原理。
7、我们还讨论一些设计问题,如基站与手机间的连接机制。第 3、4、5 部分描述系统设计的细节。第 6 部分表述系统集成、系统性能分析和能量消耗。最后,在第 7 部分总结我们的工作并列举未来的探索道路。2系统架构和工作原理这一部分阐述所提系统的架构的概况。我们把系统分为基站和手机两大部分,共有三种组件PC 用户软件、硬件和微控制器。图一显示的是 Skype Phone 不同组件构成的框图。当从因特网接收到话音信号,Skype 软件将数据传输到 USB 驱动器。第三方应用程序通过 USB HID 驱动程序在 USB设备和 Skype 之间传输接口控制参数。然后,PC 将话音信号发送到基站并转为数字信号
8、。基带电路管理话音信号的输入/ 输出,包括信号的放大和低通滤波。MCU 对话音信号进行AD/DA 转化,启动 RF 收发器和控制系统。在这一系统中我们采用脉冲编码调制(PCM )和 FSK 调制将语音信号数字化和编码,从而实现无线通信。A.PCM在现代通信系统中,脉冲编码调制在今天的数字信号中得到广泛的应用。这是一个由模拟信号转向数字编码的进程。实际的 PCM 设计总要通过滤波、采样、量化和编码来得到物理实现。图二显示这一系统中的 PCM 实现框图。我们采用 8KHz 的采样频率,因为通常语音信号频率在 300 到 3400Hz。B.FSK 调制FSK 调制是一种发送数字信号的方式,通常在有干
9、扰信号的情况下它的性能较其他调制方式更佳。FSK 用两种不同载波频率分别代表 0 和 1。逻辑 0 由特定频率为( c-D)的波形代表, 逻辑 1 由特定频率为( c+D)的波形代表。完整的方程如下所示:VFSK(t)=A cos(cD)t (1)c 是载波频率,D 是载波频率偏移量。 A 值是 FSK 信号的幅度。C.巴特沃斯低通滤波器本系统的低通滤波器可以通过信号中相对较低的频率分量而滤除高频分量。我们使用的巴特沃斯滤波器是这样一类滤波器,它具有最平坦的通频段而且群时延合适。3PC 客户端软件设计大多 VoIP 应用无论是软件还是硬件电话都要与当前 PC 协同工作。本系统中 PC 客户端软
10、件由 Skype API,USB audio driver 和第三方应用软件这三部分组成。Skype 是一个纯粹的 VoIP 应用,我们需要第三方应用软件来传输 Skype 与设备间的信息。图三显示出每个层次与组件的关系。在所提出的系统中,第三方软件利用 USB 中断来传输状态信息并控制设备查询信号。Skype API 可分为两个分离的部分:Skype Phone API 和 Skype Access API. Skype Phone API 是 Skype 用于接入设备的接口,由Skype 控制,其有关设备的部分可以认为是一个驱动程序。 Skype Access API 是 Skype向第三
11、方应用软件申请接入 Skype 函数的接口。在本系统中起重要作用的 USB 驱动包括控制传输、中断传输和音量,我们用它来支持 HID 设备类和音频设备类。4硬件设计系统硬件设计包括基带电路、射频(RF)电路和微控制器单元(MCU)电路。这里所用的语音协处理器是低功耗、小型化和高度集成(片上 ADC、DAC 和峰值为 25MIPS 的CPU)的 8051 微处理器。它可以实现无线的、数字化的、全双工的语音压缩和解压缩功能。要设计一个工作于 2 .4GHz 无线频段的高效抗干扰传输系统是一项极具挑战性的工作。因而我们选择北欧的 nRF2401 作为 2.4GHz 射频收发器,从而满足体积小、成本低
12、、低电流损耗和低电压的要求。收发器的输出电压和信道频率很容易编程控制,电流损耗也很小,输出电压为-5dBm 时电注意只有 10.5mA,在接收模式时为 18mA。CM109 是高度集成的单片 USB 音频控制器,用于嵌入式耳机驱动,升压器、USB 同步发送,和批量发送。在语音数据传输中我们采用同步发送,在音量和功能控制上采用中断发送方式。另外,由于我们采用 USB 接口来传输语音信号和控制收发器,于是我们专门针对 VoIP 应用将其进一步发展以启动普通电话、手机和与 PC 的 USB 端口相连接的耳机。图四描绘的是基站和手机的集成架构。如图所示,我们使用 CM109 USB 音频控制器作为 P
13、C 与基站的接口。5.MCU 固件设计包含在基站和手机中的 MCU 设计在系统中起着重要作用,而固件更是整个系统设计的核心。在图四中,MCU 被虚线框起来,我们可以从整个系统中很容易找到它的位置。MCU 控制数据的传送,启动 RF 收发器、AD/DA 转换以及 PC 与手机之间的通信。大多无线通信系统工作于半双工模式以避免发射机与接收机之间的干扰。在本系统中,基站是主机,手机是终端。基站沿一方向发送数据,然后立即从原数据发送方向接收数据。通信协议如图五所示。类似蓝牙,我们设计了带有 80 个不同信道的跳频模式。考虑到 RF收发器切换时间为 130us,我们将跳频速率设置为每秒 500 次。为了
14、正确发送数据,手机与基站间的同步对于这个跳频系统至关重要。这个系统采用一个叫“TimeSlotCnt”参数用于计算两方面的时间。当数据发出后,基站的 TimeSlotCnt 就用于使手机的跳频计数器与之同步。我们在所提出的系统中还设计了数据重传功能,用于话音传输。例如在图五中,当发送数据被同样处于 2.4GHz 的蓝牙信号干扰时,手机不会从基站接收数据。1ms 过后,如果基站仍然没有收到来自手机的确认信号,那么基站将再次发送数据。当数据丢失超过2ms,手机会转向下一频率点再次尝试。此外,考虑到手机对功耗的严格要求,我们设计了功率节省模式。当用户按下 OFF 按钮时,微控制器切断所有外部电流然后
15、进入睡眠模式。微控制器周期性地被外部 RC 充电电路唤醒并检测任意被按下的键。然后微控制器设置 RF 收发器使其进入接收模式,从而与基站同步。最后,微控制器检测所接收数据的控制区域,决定下一状态。完整状态图如图六所示。6集成系统的概况和性能表现整个系统的原形照片如图七所示。图上描绘了基站和手机的硬件结构概况。手机功耗是由 NI DAQ 系统测定的。我们将一个 10 欧姆的电阻与手机的测试电流源串联,电阻上的电压采样速率为每秒 1000 次。然后由 NI Labview 软件(一种具有图形界面,可采集数据,分析测量结果并显示出来的软件)处理数据并在屏幕上动态显示计算的电流值。我们还将结果与蓝牙耳
16、机比较。从结果看来,我们的系统工作在 27.34mA 而蓝牙工作在 31.41mA。因而我们节约了 13%的能量。在图八中, 我们用 USB 分析器获得 USB 总线上传输的数据。第三方应用软件成功地在 HID 设备类中使用 Set_Report 命令将数据传给设备。我们观察到设备利用 USB 中断模式回应电流状态。在图九中,频谱分析器用于测定所提出的系统的射频功率和跳频技术。在这次测量中,我们设置扫描模式为 Max Hold 模式。根据结果可知跳频范围完全覆盖了 2400MHz 到2479MHz,输出功率为-7.66dBm (0.171mW)。此外,工作距离可扩展到 10 米,这一距离对大多
17、数 Skype 用户而言是可兼容的。7结论我们提出了一种新型的 2.4GHz 无线 Skype 电话,延长了 USB 网络电话极其有限的工作距离。这一系统通过使用跳频技术、专用 USB 音频控制器和射频收发器实现。作为系统的协处理器,与蓝牙相比,8051 微控制器控制客户- 服务器架构并降低了成本。不像蓝牙耳机那样简单,本系统设计了键盘,这样我们就可以通过手动设备拨号。整个系统的性能也得到了证明。可以看出本设计有着抗干扰的良好品质。此外,工作距离对大多数用户而言足够方便。通过客户- 服务器架构和无线操作特点,本系统可用于改进许多应用,特别是在便利性和可移动性上。在将来,我们将致力于减少系统功耗和延长工作距离。