请推荐个室内无线音频传输的方案

[复制链接]
 楼主| forthlab 发表于 2008-1-30 13:49 | 显示全部楼层 |阅读模式
在室内将信号传输到计算机.基本要求和条件是:<br />1.信号源是音频模拟信号,20HZ--6KHZ,对失真度要求不高,比电话好就行.<br />2.不能用红外,因为经常被遮挡.<br />3.手持设备,用电池供电.体积和重量不要太过分就行.不是连续使用.一次1分钟左右,1天100次左右.使用环境不是工业现场,类似办公室的环境.<br />4.单向传输,可以用模拟方式传输.<br />5.如果可以在传输音频信号的同时传输控制信号则锦上添花,可以在手持设备上增加控制开关,控制音量,计算机启动录音或其他功能.<br /><br />我大概考虑一下,有几个方案,各有利弊:<br />1.用FM调频发射方式,音质满足要求.控制信号可以走载波.<br />或者用R-L立体声,一个声道传输声音,另外一个声道传输控制信号.<br />缺点是现成的FM芯片工作范围在FM广播区域,不合适.另外要自己做FM接收设备,接计算机的声卡.如果有现成方案或板卡可以考虑.<br /><br />2.蓝牙.不熟悉蓝牙,用这个方案音频信号似乎要做AD转换成数字?另外还要配CPU?不过用蓝牙后,传输控制信号应该没有问题的.计算机端不要另外的设备,加个蓝牙-USB即可,而且用蓝牙的,感觉产品比较酷,对市场推广有好处.<br /><br />3.用无线模块.这个方案主要关心音频信号模拟转数字后传输速率是否够,整个设计,除了无线模块外都在自己掌握中,配上CPU比较有把握.接收部分用串口?<br /><br />烦请各位大侠给出出主意,&nbsp;多提意见,在此先谢谢!预祝各位新年好!<br />
stycx 发表于 2008-1-30 14:02 | 显示全部楼层

FM调频发射音频,无线模块传控制信号

  
chunyang 发表于 2008-1-30 14:08 | 显示全部楼层

用2.4G数字音频传输方案最佳

&nbsp;&nbsp;&nbsp;&nbsp;音频连带控制一并搞定,价格稍高于模拟方案,但传输保密且可以避免同频干扰问题,缺点仅仅是开发麻烦,适合批量应用。模拟方案开发简单,特性上和前述数字方案恰恰相反,自己做着玩而不是做批量产品,模拟方案则更方便些。
 楼主| forthlab 发表于 2008-1-30 14:35 | 显示全部楼层

没有想到这么快就有回复了,谢谢各位.

chunyang你好!我刚才到你的工作室去看了,就是想听听你的意见.<br />准备做批量的.<br />你说的开发麻烦不知道到底有多麻烦.我熟悉单片机开发.<br /><br />
chunyang 发表于 2008-1-30 15:07 | 显示全部楼层

主要是针对RF芯片的编程及协议的实现

&nbsp;&nbsp;&nbsp;&nbsp;音频经量化后打包成短帧然后传输,同时加个缓冲存储,这是为了对抗干扰及同地多设备同时使用时的跳频传输,当然,不用协议直接传输也行,但对抗干扰及多机使用时会有问题。<br />&nbsp;&nbsp;&nbsp;&nbsp;如果你的开发能力包括PC平台的都足够,最佳方案就是做成类似U盘的无线音频USB接口,即插即用,自动匹配,甚至可以实现一拖多和动态插入/解除,当然,这些都是靠协议实现的,硬件成本几乎一样,区别在于软件开发的工作量和难度。
 楼主| forthlab 发表于 2008-1-30 19:39 | 显示全部楼层

做个简单分析一下这个方案

无线传输专业性比较强,我也不熟悉,就跳过了。有不对的地方麻烦chunyang指正。<br />1.按照6KHz音频信号,经过8bitAD,3倍采样率,那么音频数据的原始数据流量是6K*8*3=&nbsp;144k。担心无线模块不能直接传输高流量的数据流。<br />2.对数据进行编码压缩,将数据流降下来。这里又有门槛了&nbsp;:(&nbsp;&nbsp;&nbsp;。<br />3.将控制信息与数据流进行混合编码,同时CPU处理能力要和数据量相当。<br />4-a.接收电路接收数据,解码音频信号和控制信号。与计算机的接口:音频接声卡,控制信号接串口。这个方案简单些,但有点土,而且使用不方便,没有电源。&nbsp;&nbsp;<br />4-b.&nbsp;接收电路使用带USB的CPU,直接将接受的数据传送到PC,由PC解码处理,这应该就是chunyang说的最佳方案,不过USB还是门槛啊&nbsp;:(&nbsp;。<br />5.PC上面的程序。这个找别人搞定,不进这个门了。<br /><br />感觉要做好这个项目,还是有几个小门槛的,1个人在短时间内搞定要求挺高。当然本人水平不够是主要原因。呵呵<br /><br /><br />&nbsp;
bg6nw 发表于 2008-1-30 20:18 | 显示全部楼层

传输距离?

还有,一个环境最多几个信道同时工作?<br /><br />我看还是FM方案来的快些,可以把频率搞到校园调频的76--88MHz&nbsp;。<br /><br />发射端用SCA副载波传输控制信号,控制信号可以用双音多频,简单有效。<br /><br />
chunyang 发表于 2008-1-30 21:58 | 显示全部楼层

模拟方案当然是简单多了,但作为批量产品不适合

&nbsp;&nbsp;&nbsp;&nbsp;2.4G的模块带宽至少都有500K,传保真度不高的语音绰绰有余,AD可以使用音频编码IC,富裕的带宽用于传输协议及控制等。难点主要在协议和解码部分,解码考虑成本一般不用解码IC,PC平台的资源足够,但要会相关编程。USB的驱动也是另一个难点,用USB桥片可以绕过驱动,但这部分的成本支出不合算,所以到底什么方案合适,也要充分考虑产品的市场定位。
mpuhome 发表于 2008-1-31 09:22 | 显示全部楼层

楼主留个邮件

我发资料给你,我有类似的东西,或者发邮件到mpuhome@gmail.com<br />我会回复你的
pheavecn 发表于 2008-1-31 13:14 | 显示全部楼层

耳机:ATmega8+nRF24L01,PC:nRF24UL01。

  
chunyang 发表于 2008-1-31 19:37 | 显示全部楼层

nRF、CC系的任一2.4G芯片都可满足

  
 楼主| forthlab 发表于 2008-1-31 19:47 | 显示全部楼层

mpuhome:你好!

我的邮箱是forthlab@gmail.com。<br />这是我最近关注的一个项目,最近还要讨论一下项目,所以我要先把方案准备一下。我负责技术&nbsp;:(&nbsp;。惭愧,好多都不懂。<br />到这里救助大家,借助21ic的平台一起讨论。<br /><br />另外这几天还在查蓝牙模块的资料。要和无线模块对比一下。<br />
david4383 发表于 2008-2-5 21:08 | 显示全部楼层

我给楼主说个最新技术.

使用RDS,这样声音与控制信号同时传输.你可以上网查查.其原理就是FM,然后在里面加上控制信息.国外用的多了.
lfjwfm 发表于 2008-2-12 18:16 | 显示全部楼层

二姨上有

基于IEEE802.15.4的无线VoIP话机系统<br />[日期:2008-1-4]&nbsp;来源:电子产品世界&nbsp;&nbsp;作者:飞思卡尔-电子科技大学研究中心&nbsp;王晗&nbsp;李广军&nbsp;郭志勇&nbsp;&nbsp;[字体:大&nbsp;中&nbsp;小]&nbsp;&nbsp;<br /><br /> <br /><br /><br />摘要:&nbsp;随着网络的普及,基于分组交换的VoIP技术得到迅猛发展。如何将VoIP技术与无线通信技术相结合,实现无线VoIP话机是当前嵌入式VoIP话机设计的一个新方向。本文提出了一种适用于家庭办公室小范围内的无线VoIP话机系统设计方案,并且将该方案在具体的硬件平台上付诸实现。本文重点介绍了该系统的设计特点,无线MAC层的设计,以及手持设备端的硬件结构和软件结构。&nbsp;<br />关键词:&nbsp;IEEE802.15.4;mC/OS-II;SIP;g.726&nbsp;<br />  <br />当前VoIP技术和无线通信技术的迅速发展为无线VoIP话机的实现创造了条件,也形成了一个研究热点。当前提出的设计方案有采用802.11协议(WLAN)实现VoIP无线化,虽然覆盖范围可达上百米,充足的带宽对语音压缩也没有过高要求,但作为移动便携设备,其成本和功耗成为了设计瓶颈。本设计主要从性能,成本,功耗等方面出发,提出了一种利用低速低功耗的无线个域网技术IEEE802.15.4[1]来实现无线VoIP话机系统的方案,并在基于Freescale射频芯片MC13192的硬件平台上成功实现了该方案。&nbsp;<br />  <br />无线VoIP话机系统方案&nbsp;<br />  <br />作为无线便携设备,功耗是首要考虑的一个因素,如果把网络协议栈,各个语音处理模块,无线通信都放在手持设备上,必然造成手持设备功能复杂,功耗过大。本设计考虑将嵌入式VoIP话机划分为两部分:无线语音网关和手持设备端。无线语音网关作为该系统的非移动端,以有线方式连接到互联网,主要处理网络及会话协议,各种语音压缩标准与g.726压缩标准之间的转换以及无线收发工作,而作为真正移动部分的手持设备端仅作简单的会话信令处理,g.726语音编解码和无线收发工作。在这种结构下,还可以增加手持设备的数量,实现多路无线通话,本设计成功实现了两个手持设备的无线语音通话。即两个手持设备可同时与互联网上其它用户建立语音通话。该无线VoIP话机系统如图1所示。&nbsp;<br /><br /><br />图1&nbsp;无线VoIP话机的系统示意图&nbsp;<br />  <br />无线语音网关同手持设备端之间的无线通信采用了低速低功耗的IEEE802.15.4协议,采用该协议虽然能极大地降低系统特别是手持设备的功耗,但仅仅250Kb/s的无线带宽对语音的传输却提出了挑战。为适应250Kb/s的无线传输速率同时保证语音质量,本设计采用了g.726压缩编解码将语音速率从64Kb/s降低到16Kb/s。另外根据该应用的特点:手持设备与语音网关间仅构成星型拓扑结构,删减了IEEE802.15.4协议部分功能,对其帧结构也作了一定修改以增加负载数据在帧中所占的比例。&nbsp;<br />  <br />SIP协议与无线网内部会话信令&nbsp;<br />  <br />VoIP目前有两大独立的信令标准:H.323协议和SIP协议。H.323主要参考了传统PSTN的呼叫控制和信令架构,便于与传统电话网相连。SIP协议是由IETF在1999年提出来的一个应用控制协议,它可用来创建、修改以及终结多个参与者参加的多媒体会话进程。SIP协议借鉴了Internet协议设计思想,具有简单,开放,可扩展等特点。本设计采用了SIP协议,并在实现时采用了源代码开放的SIP协议栈osip2/eXosip库。&nbsp;<br />  <br />无线网内部会话信令是本设计中无线语音网关与手持设备间进行通话所交互的信令。该信令集可以看成SIP信令在本无线网络中的扩展。由于SIP协议是放在无线语音网关上实现,而在会话过程中,部分SIP事件例如发起呼叫,需要由手持设备来响应或送出,所以需要无线语音网关将这部分消息发送给手持设备,同时需要将从手持设备接收到的消息转换成相应的SIP信息发送到互联网。无线网内部会话信令便在无线语音网关和手持设备间充当了信息传递的桥梁。表1列举了部分无线网内部会话信令在软件实现中定义的宏名。&nbsp;<br />  <br />这里以无线手持设备发起呼叫为例介绍无线手持设备如何通过内部会话信令与其他VoIP电话建立会话,如图2所示。&nbsp;<br /><br />图2&nbsp;无线手持设备发起呼叫信令交互&nbsp;<br /><br />当用户通过无线手持设备拨打一个号码时,无线手持设备将发送一个HtoG_CALL_&nbsp;NEW的内部会话信令连同呼叫的号码给无线语音网关,无线语音网关收到该信令后,将根据该信令构造相应的SIP消息并发送到外部网络。当无线语音网关收到来自被叫方表示振铃信息的暂时应答RINGING时,将发送一个GtoH_CALL_RINGING的内部会话信令给手持设备。当无线语音网关收到来自被叫方表示应答的信息ANSWERED时,语音网关将启动RTP线程并发送一个GtoH_CALL_ANSWERED的内部会话信令给手持设备以通知被叫方已应答。此时手持设备开启语音进程,与被叫方实现通话。&nbsp;<br />  <br />无线MAC层设计和同步的实现&nbsp;<br />  <br />根据设计的特点,无线语音网关同手持设备间的无线网络采用星型拓扑结构,无线语音网关作为无线个域网的协调器同手持设备进行信息交互。IEEE802.15.4MAC层分为使用信标帧和不使用信标帧两种工作模式,本设计采用使用信标帧同步的超帧结构,由无线语音网关发送信标帧同步无线手持设备的数据传输。本设计中超帧长30ms,等分为16个时隙,每个时隙为1.875ms。信标帧在时隙1发送,时隙2到时隙8为竞争时隙,使用时隙CSMA-CA算法传输命令帧和应答帧。时隙9到时隙16固定分配给两个手持设备作为上下行语音数据通道。上下行各两个时隙的分配可以满足经&nbsp;g.726压缩后16Kb/s的语音数据传输带宽要求。超帧结构如图3所示。&nbsp;<br /><br />图3&nbsp;超帧结构&nbsp;<br />  <br />对于命令帧,采用应答和超时重发机制保证其可靠传输。对于语音数据,采用5/6分组FEC纠错算法改善语音质量。该纠错算法可以恢复五个连续语音数据包中任意丢失的一个,且实现简单,延迟较小。&nbsp;<br />  <br />由于所有信息传输都是在双方约定的时隙内进行,时隙的错位,抖动都将造成丢帧,而丢帧对语音质量的影响非常大,所以本设计的一个关键点是实现语音网关与手持设备间的精确同步,即手持设备在收到信标帧后保证随后15个时隙与语音网关的对应时隙对齐。本设计利用了射频芯片MC13192的接收时间戳功能来实现精确同步,如图4所示。&nbsp;<br /><br />图4&nbsp;超帧的同步&nbsp;<br /><br />时隙1开始后,语音网关需要TSTms的时间将射频芯片从空闲状态转换为发送状态,当转换为发送状态后,预先存储在射频芯片发送RAM中的信标帧立即开始发送,手持设备上的射频芯片在收到六个字节TSPms后自动锁存一个当前时间timestamp(时间戳),&nbsp;这个值由手持设备在正确接收完信标帧后读取。根据这个值,手持设备可以设定MC13192定时器在(timestamp+1875-TST-&nbsp;TSP)ms时刻产生中断,进入该中断服务程序的时刻即时隙2的起始时刻。在时隙2中使用MCU定时器设置随后14个时隙的定时中断产生时间,定时时间为1875ms。设置MC13192定时器中断相关代码如下所示:&nbsp;<br />  switch(frametype)&nbsp;<br />  {&nbsp;<br />  /*收到信标帧*/&nbsp;<br />  case&nbsp;BEACON:&nbsp;<br />  /*获取接收时间戳*/&nbsp;<br />  timestamp=PLMEGetTimestampRequest();&nbsp;<br />  /*设置时隙2定时中断时刻*/&nbsp;<br />  PLMEEnableMC13192Timer1(timestamp+1875-144-192);&nbsp;<br />  beacon_receive_index++;&nbsp;<br />  break;&nbsp;<br />  case&nbsp;DATA:&nbsp;<br />  ...&nbsp;<br />  }&nbsp;<br />  在时隙2中断服务程序中设置随后14个时隙中断时刻,代码如下所示:&nbsp;<br />  /*MC13192定时器1中断服务*/&nbsp;<br />  if&nbsp;((u16StatusContent&nbsp;&&nbsp;TIMER1_IRQ_MASK)&nbsp;!=&nbsp;0)&nbsp;{&nbsp;<br />  /*&nbsp;停止MC13192计数器*/&nbsp;<br />  SPIDrvWrite(T1_HI_ADDR,&nbsp;0x8000);&nbsp;<br />  /*&nbsp;设置MCU定时器*/&nbsp;<br />  EnableTMR(1875);&nbsp;<br />  无线手持设备端的硬件框架&nbsp;<br />  手持设备端的硬件结构需要支持以下功能:&nbsp;<br />  ·能接收并处理用户按键信息&nbsp;<br />  ·能在LCD屏上显示系统信息&nbsp;<br />  ·无线数据传输&nbsp;<br />  ·语音数据的采样、恢复以及PCM编解码&nbsp;<br />  ·外扩存储设备以存放大量的代码和数据&nbsp;<br /><br />按照以上对硬件功能的要求,本设计采用了Freescale公司32位微处理器MCF5249作为主控芯片。该处理器工作主频为140MHz,实际工作频率可通过片内PLL设定,片内带有8K的指令高速缓存和96K的SRAM。该处理器还提供丰富的外设供用户使用。&nbsp;<br />  <br />无线收发模块采用Freescale公司符合IEEE802.15.4规范的射频芯片MC13192,该芯片工作在2.4GHz频段,提供16个无线通道,数据速率为250Kb/s[4],通过QSPI与主控芯片进行数据交换。语音采样模块采用Motorola公司13位线形PCM编解码芯片MC145483SD[5],该芯片对语音进行AD采样并形成线形PCM流,通过音频接口与主控芯片交换数据。时钟模块的设计充分考虑手持设备的低功耗要求,提供高低两种时钟输入。当系统处于未通话状态,可向系统提供低频率时钟。时钟输入可通过软件配置GPIO进行选择。因为要处理大量音频数据和固化代码,扩展了片外SDRAM和FLASH。其他模块还包括键盘,LCD,串口和BDM调试接口,其硬件框架如图5所示。&nbsp;<br /><br />图5&nbsp;无线手持设备端的硬件框架&nbsp;<br />  <br />无线手持设备端的软件设计&nbsp;<br />  <br />无线手持设备端的软件框架&nbsp;<br />  <br />无线手持设备在软件设计上需充分考虑系统的实时性和功耗。其一,手持设备需要处理语音,会话控制信令,键盘输入信息等多种数据,并需要进行通话过程控制,无线收发控制,单任务环境显然不能胜任。其二语音数据是实时数据,必须得到及时有效的处理,且系统不能过于复杂,以减少不必要的开销,降低功耗。综合以上两点,本设计采用了一个轻巧的多任务实时嵌入式操作系统mC/OS-II,其内核可剥夺性保证了实时任务的运行。而且其内核代码量小,能充分节省系统资源。该嵌入式操作系统提供除空闲,统计和保留任务以外的56个实时任务供用户使用,提供信号量,消息队列等机制实现任务间的同步和信息传递。其实时性强,代码量小,内核简单的特点使其非常适用于本手持设备。&nbsp;<br />  <br />使用该操作系统之前需将其移植到MCF5249上,根据处理器的具体信息,编写OS_CPU.H,OS_CPU_A.ASM和&nbsp;OS_CPU_C.C三个文件。&nbsp;<br />  <br />除内核外,完整的操作系统还需要编写键盘,LCD,音频驱动和射频芯片驱动。音频驱动采用Phlips&nbsp;I2S数据格式,设定采样率为8KHz。射频芯片驱动采用Freescale公司为MC13192提供的配套软件模块。&nbsp;<br /><br />操作系统之上是无线MAC层,该模块针对语音无线传输的特点简化实现了IEEE&nbsp;802.15.4&nbsp;协议MAC层功能。第三层为语音压缩编解码g.726模块和无线网内部会话信令处理模块。会话信令处理模块负责处理来自无线语音网关的会话信令。最上层为应用层,实现用户界面和通话过程控制。无线手持设备总统框架如图6所示。&nbsp;<br /><br />图6&nbsp;无线手持设备端的软件框架&nbsp;<br />  <br />无线手持设备端的软件流程&nbsp;<br />  <br />当手持设备上电启动后,其工作流程如图7示。首先进行的是系统的初始化,包括处理器初始化,操作系统mC/OS-II初始化,LCD,键盘,射频模块等的初始化。之后建立起始任务并通过OSStart()函数进入多任务环境。此时起始任务占用CPU资源,在起始任务中,建立按键信息处理任务并通过信号量机制挂起。然后判断是否收到来自无线语音网关的帧,如果有,调用frame_deal()函数处理帧信息,在该函数中调用call_command_deal()完成无线网内部会话信令的处理。接着判断通话是否建立,如果建立则创建语音任务,在语音进程中使能PCM编解码芯片,并进行g.726压缩编码。最后判断是否有帧需要发送给无线语音网关,如果有则把帧添加到发送缓存,等待发送时隙到来。这一过程完成以后重新跳到判断是否收到来自无线语音网关的帧,重复以上过程。如果有键盘中断,将会释放一个信号量,该信号量将解挂按键信息处理任务。该任务对键盘输入信息进行处理。&nbsp;<br /><br />图7&nbsp;无线手持设备的软件流程<br /><br />结语&nbsp;<br />  <br />本设计已经在基于MCF5234微处理器(无线语音网关)和MCF5249微处理器(无线手持设备)的硬件平台上实现。如图8所示,左图为无线语音网关,右图为无线手持设备。&nbsp;<br /><br />图8&nbsp;系统硬件实物图&nbsp;<br />  <br />本设计实现了包括呼叫转移,三方通话等在内的7项通话功能。在40米范围内,具有良好的语音效果。该系统为家庭、办公环境实现无线VoIP通信提供了一种参考设计,且具有结构简单,功耗小,软件层次清晰等特点。&nbsp;<br />  <br />参考文献:&nbsp;<br />  1.&nbsp;IEEE&nbsp;Standard&nbsp;802.15.4-2003&nbsp;<br />  2.RFC&nbsp;3261.Session&nbsp;Initial&nbsp;Protocol.&nbsp;2002&nbsp;<br />  3.Freescale.&nbsp;MCF5249&nbsp;ColdFire&nbsp;Integrated&nbsp;Microprocessor&nbsp;User’s&nbsp;Manual.&nbsp;2003&nbsp;<br />  4.Freescale.&nbsp;MC13192/MC13193-2.4GHz&nbsp;Low&nbsp;Power&nbsp;Transceiver&nbsp;for&nbsp;the&nbsp;IEEE802.15.4&nbsp;Standard&nbsp;Reference&nbsp;<br />  Manual.&nbsp;2006&nbsp;<br />  5.Motorola.&nbsp;3V&nbsp;13-bit&nbsp;Linear&nbsp;PCM&nbsp;Codec-Filter&nbsp;User’s&nbsp;Manual.&nbsp;1997&nbsp;<br />  6.Jean&nbsp;J.&nbsp;Labrosse&nbsp;著,邵贝贝等译,嵌入式实时操作系统uC/OS-II(第二版).&nbsp;北京航空航天大学出版社.&nbsp;2005&nbsp;<br />&nbsp;<br /><br /><br /><br /><br /><br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

87

主题

749

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部