短距离多点无线语音传输系统的设计与实现

2016-05-30 03:27陈成明虞丽娟曹守启
关键词:对讲机短距离

陈成明, 虞丽娟, 曹守启

(1. 上海海洋大学 工程学院, 上海 200090;(2. 同济大学 机械与能源工程学院, 上海 201306)



短距离多点无线语音传输系统的设计与实现

陈成明1,2, 虞丽娟2, 曹守启1

(1. 上海海洋大学 工程学院, 上海 200090;(2. 同济大学 机械与能源工程学院, 上海 201306)

摘要:结合STM32单片机,研究短距离多点无线语音通信系统的开发,探讨系统软硬件的可行性设计.通过配置硬件模块和功能软件,构建短距离多点无线语音传输系统的理论模型.结果表明:设计的系统拓宽了市面上现有对讲机的内嵌功能和使用范围,既不受信号网络覆盖局限的影响,又无需信息服务费,而且在技术层面改变传统对讲机同频单工的通信模式,实现了多点间无线语音广播、组播和单播功能.

关键词:无线语音传输; 短距离; STM32; 多点通信; 对讲机

移动电话在很多复杂区域和特殊场合的功能应用并没有达到人们的预期效果.开发新的短距离多点无线语音传输系统,有助于解决复杂区域和特殊场合的群体活动中成员间的通话难题,增加交流效率,提高快速应变的能力[1].本文紧扣实际研究需要,综合考虑特定单片机的实际性能,借助STM32单片机研究开发短距离多点无线语音传输系统.

1STM32芯片

STM32芯片家族是一款基于ARM Cortex-M3内核理论开发的32位处理器.Cortex-M3内核采用哈佛结构,指令代码和数据之间的各存储空间相对独立.Cortex-M3内核的硬件单元部分大量集成存储单元的控制器,有效降低了微控制单元(MCU)对外联接的设计工艺难度.

1.1STM32F103RBT6芯片特点

STM32F103xx系列最高可控工作频率达到72 MHz,内嵌存储器的容量规格呈动态化.芯片中集成多项功能,还有多种先进的通信接口.

STM32F103RBT6芯片引脚数为64.程序空间存储器存储容量达128 KB,随机输入输出管理存储器的设定存储容量高达20 KB.STM32F103RBT6芯片上的2个串行外设接口(SPI接口)能提供18 Mbit·s-1的传输速率.设计时,SPI接口分别对应直连无线通信模块和语音模块自身具有的SPI接口.芯片处理器封装的64个引脚各具特定功能.因此,选择STM32F103RBT6芯片作为系统主控制芯片.

1.2STM32F103RBT6芯片启动设置

STM32F103RBT6芯片中,BOOT0,BOOT1引脚用于设置STM32的启动方式.设计中,芯片的RTS和DTR串口会发送可接收的信号自动调整BOOT0和BOOT1的运行值,启动系统将不再是手动转换STM32.RTS和DTR串口信号的传输便于串口指令下载和系统的在线调试.

2整体设计方案

系统设计主要由3部分组成:通信技术、硬件和软件[2].通过设计开发出的短距离多点无线语音传输系统,能快速实现广播组播等功能优势,降低研发成本,增加工业生产线量产收益[3].

2.1通信技术

移动通信网络的发展历程经历了几个阶段.2G 移动通信网络实现了远距离的语音通信,以CDMA,GSM等技术为代表.3G移动通信网络实现了多媒体多样化业务的高速传输[4],以TD-SCDMA,WCDMA,CDMA2000等技术为代表.与此同时,4G 移动通信经过近几年的研究开发,积极实现试点应用并广泛实施,以TDD-LTE,FDD-LTE,WiMax为代表[5],逐步融入并改变了人们的生活.

目前的通信领域中,已经成功研发了多种短距离无线通信技术.权衡无线通信技术的优势与劣势,综合考虑适用性、投入成本、系统能耗、信号传输速率、通信传输距离等因素,文中选用2.4G无线技术作为设计系统的无线通信技术.

2.2硬件平台设计

2.2.1无线模块设计在常见的2.4G无线通信芯片中,通过传输速率、多点通信、待机电流及时间优势、适用性等比较,选用nRF24L01芯片作为本系统的无线模块.nRF24L01芯片的内部集成了NORDIC的Enhanced Short Burst协议,其内嵌功能确保了无线通信的点对点、点对多点互联.芯片上的SPI接头能保障各种功率选择、频道分布选择和执行协议的设定等传输配置.芯片具备125个通信频道,能够明显提高系统的抗干扰能力[6].芯片的通信信号传输速率峰值可达2 Mbit·s-1,能够在70~100 m的通信距离范围内发挥功效.该芯片的工作电压基本保持在1.9~3.3 V,是实现短距离内单对单、单对多无线语音通信的最优化选择.

无线模块设计的整体地址选择和数据指令均与主控制处理器STM32F103RBT6的通信稳定链接,同步运行靠SPI口完成,确保工作时无线模块nRF24L01自身的SPI口直接连入STM32的SPI1口.CSN以低电平的工作模式实现为SPI口的数字输入阶段信号筛选功能.SCK作为SPI时钟输入口,控制整个无线模块的工作频率.STM32作为主处理器,激励nRF24L01模块的MOSI和MISO口,在发送模式下通过MOSI发送数据,在接收模式下通过MISO接收数据;一旦进入nRF24L01的待机或掉电模式,MOSI和MISO口将自动配置nRF24L01模块的有效工作参数稳定性能.

2.2.2语音编码模块设计在通信领域内,实现语音编码算法中,应用比较突出的技术包括脉冲编码调制(PCM),自适应增量调制(ADM)和自适应差分脉冲编码调制(ADPCM)[7].设计主要通过比特率、延迟时间、复杂程度和研发工艺质量4个性能参数作为评价标准选择编码技术.综合比较,选择ADPCM作为语音编码方案.

VS1003B语音芯片基于ADPCM编码技术开发,功能明确,采用数字化处理方式调整模拟态的语音信号.数字化的语音数据由主控制器STM32处理后集中被还原成声音,驱动耳机或音响发送.VS1003B模块使用SPI口与STM32的SPI口相连进行通信.语音模块使用的系统时钟频率达到一定值时,STM32系统时钟会调整至语音模块使用的系统时钟频率的两倍,应该积极运用相关软件配置VS1003B连入STM32的SPI口,迅速匹配工作速率值,确保两者间的实时通信成功率.

2.3软件设计

软件设计的核心技术要求实现系统以及各选用硬件模块的初始化、建立有效的通信链路、建立正确的无线收发信道,确保防干扰,降低掉包率.文中采用先形成通信链路再实现语音传输的策略,发送端口将数字化控制信令发出,脱离语音数据后独立传输,在寻求到合适的目标后,建立可行的通信握手机制[8],搭建通信链路,确保语音数据的传输.

2.3.1系统整体初始化nRF24L01无线模块的数据操作,由STM32主控制单元的SPI 接口完成.nRF24L01模块初始化流程,如图1所示.VS1003B模块初始化流程,如图2所示.

图1 无线模块初始化流程图 图2 语音模块初始化流程图Fig.1 Flow chart of wireless module initialization Fig.2 Flow chart of voice module initialization

STM32将分离出7个专用的通用输入输出I/O口,与VS1003B模块各引脚端口互连.STM32的SPI2口中有3个接口,分别对应VS1003B模块的3个接口,即STM32的PB14与VS1003B的MISO相接、STM32的B15与VS1003B的MOSI相接、 STM32的PB13与VS1003B的SCLK脚对接.而STM32剩余4个通用 I/O则全部接入VS1003B剩余4根接线.模块的通用普通 I/O口应在语音模块初始化之前进行初始化;然后,进一步初始化已经互联的主控器专用SPI口;最后,通过SPI2总线对VS1003B实现初始化.

2.3.2建立通信网络链路使用nRF24L01特有的Enhanced Shock Burst模式实现通信链路的建立.无线模块在接收模式下的接收端,封装有自动应答功能.发出的应答对应指令为ACK信号[9].在发送模式下,数据在MCU中缓存,启动Shock Burst后完成数据发送.发送步骤结束后,模块自动切换到接收模式,重新等待收端不间断发出的ACK信号.模块的0号数据通道具备的40位容量能够完整接收ACK信号.具体数据发送流程,如图3所示.通信链路建立的数据接收流程,如图4所示.

图3 数据发送流程图 图4 数据接收流程图 Fig.3 Flow chart of a data send Fig.4 Flow chart of a data reception

2.3.3无线语音收发的主动运行过程无线语音收发过程由VS1003B模块中的SPI口完成数据读写.无线模块选择Shock Burst发送模式,等待指令开始工作.语音模块通过智能算法将获取的语音模拟信号转换成一定编码的数字语音数据,存放于VS1003B的FIFO缓存中.FIFO缓存积满32字节数据后发送,由主控制器STM32通过SPI口读取缓存中的语音数据,写入无线模块nRF24L01发送缓存.而nRF24L01也将选择每次发送32个字节语音数据实现完整通信.整个无线语音的收发过程中,系统设置的LED1灯会随着每读写8 000字节的语音数据而闪烁一次.正常的闪烁频率能够指示系统的当前工作状态.

语音接收过程与发送过程运行机理相似,但进出通道正好相反.nRF24L01进入接收模式,一有数据便接收存入VS1003B缓存FIFO,STM32的SPI口读取信息后在语音模块中进行数据解码,同时通过外放装置实现播放.整个过程简单有效,具有极高的执行效果.同时,系统设置的LED2灯的周期性闪烁也能够指示系统的当前工作状态.

2.3.4频率切换和自动扫描功能的实现系统采用手动切换发送端频率,自动扫描接收端频率的方法.自动切换后的频率能真正满足系统语音广播、组播和单播的功能实现[10].

系统靠外围按键电路电流手动切换发送端的信号发射频率.在语音发送阶段,系统设置的发送键KEY1,每手动按下一次,终止语音数据发送.接收端将收到8 个通信中断数据包发送频率保持在当前频率.无线模式接收数据包后,系统的发送频率开始,搜索获取下一个频点后,自动调频等待通信恢复.

接收端在接收模式下,自动扫描频率后开始工作.接收端轮流在1个广播频率,2个组播频率和各个单播频率等各个频点上依次等待接收数据.一旦在某个频点上发现数据流出,接收端自动建立该频点上的通信点,实现发送端通信,开始语音传输.

图5 系统总体结构层次图Fig.5 System overall structure hierarchy chart

2.4硬件运行总体方案

系统硬件部分主要包括STM32F103RBT6主控制器、nRF24L01无线模块、VS1003B语音模块等几大板块.发送部分,设计使用的VS1003B语音芯片,能够快速实现模数转化,将数字化处理后的模拟声音信号传给STM32主控制器.由STM32主控制器进一步封包处理语音数据,封包后的语音数据帧直接发送至nRF24L01无线收发模块.RF24L01再以一定频率发送数据帧.接收部分,无线模块实时接收语音数据帧,主动提取语音数据帧中的语音数据,通过主控制器的反馈机制,积极分析判断数据内容,向语音模块传输语音数据后进行解码,并通过外放装置进行播放.系统中的各功能板块之间的通信靠STM32主控制器与nRF24L01无线模块和VS1003B语音模块之间的SPI接口完成信息交换.系统总体结构层次,如图5 所示.

3结束语

设计开发短距离多点无线语音传输系统.该系统考虑实际,追求低成本、突出轻便灵活、具有较丰富的功能特点.硬件设计系统的处理器单元、无线通信模块、语音模块均进行合理选材设计,软件设计也针对每一个模块单位做出尝试分析,最终实现了多点间无线语音广播、组播和单播功能.

参考文献:

[1]方旭明,何蓉.短距离无线与移动通信网络[M].北京:人民邮电出版社,2004:45.

[2]李现涛,郭达伟,李杨.一种移动无线自组网即时语音通信系统的实现[J].微处理机,2011,32(5):38-40.

[3]史迩冬.小型认知无线网络的设计和实现[D].苏州:苏州大学,2012:12.

[4]王燕琼,李国刚.下行多小区MIMO系统协作多点传输联合调度机制[J].华侨大学学报(自然科学版),2012,33(3):260-264.

[5]赵亮.单片机应用系统设计与产品开发[M].北京:人民邮电出版社,2004:68.

[6]葛俊峰,戈华.基于ZigBee无线传输技术的智能仓储系统设计[J].内蒙古师范大学学报(自然科学汉文版),2015,44(1):49-52.

[7]李现涛,郭达伟,李杨.一种移动无线自组网即时语音通信系统的实现[J].微处理机,2011,32(5):35-39.

[8]傅民仓,冯立杰,李文波.短距离无线网络通信技术及其应用[J].现代电子技术,2006,29(11):15-17,30.

[9]黄华灿,林章省.语言学习系统的语音子系统设计[J].华侨大学学报(自然科学版),1992,13(2):265-270.

[10]吴文南,胡爱群,宋宇波.短距离无线语音和数据传输模块的设计与实现[J].现代电子技术,2007,30(5):29-31.

(责任编辑: 黄晓楠英文审校: 吴逢铁)

Design and Implementation of Short-Range Multi-Point Wireless Voice Transmission System

CHEN Chengming1,2, YU Lijuan2, CAO Shouqi1

(1. College of Engineering Science and Technology, Shanghai Ocean University, Shanghai 201306, China;(2. College of Mechanical and Energy Engineering, Tongji University, Shanghai 200090, China)

Abstract:This paper studied the development of short range multi point wireless voice communication system, combined with STM32 single chip microcomputer and discussed the feasibility of the system hardware and software design. It constructs the theoretical model of short range multi point wireless voice transmission system, by configuring the hardware modules and functional software. Result shows that the system has been designed to expand the inter embed function and using scope of the commercial interphone. It is not affected by the limitation of signal network coverage and doesn′t need information service fee. At the technical level, it has changed the traditional mode of communication with the radio frequency simplex. At the same time, it has realized the multi point wireless voice broadcast, multicast and unicast function.

Keywords:wireless voice communication; short distance; STM32; multi point communication; interphone

中图分类号:TN 929.5

文献标志码:A

基金项目:上海市2015科技创新行动计划项目(15DZ202202)

通信作者:陈成明(1978-),男,讲师,博士研究生,主要从事物联网工程的研究.E-mail:cmchen@shou.edu.cn.

收稿日期:2016-03-08

doi:10.11830/ISSN.1000-5013.2016.03.0312

文章编号:1000-5013(2016)03-0312-04

猜你喜欢
对讲机短距离
帮助聋哑人士交流的“对讲机”
家用对讲机的概述
轴对称与最短距离
短距离加速跑
耳机式对讲机
静力性拉伸对少儿短距离自由泳打腿急效研究
时尚对讲机,情侣们的爱情专线