基于Windows和USRP数字对讲机收发系统设计
摘要:最新提出了一种在Windows平台上基于USRP的数字对讲机收发系统设计方案。首先简要介绍USRP及其开发平台,通过各种对比选择在Windows平台上利用VC来实现,然后描述了USRP驱动安装,详细分析了UHD重组的API函数接口,最后搭建数字对讲机收发系统,采用DMR数字通信协议,利用USRP作为收发前端,在PC上通过串口RS232连接AMBE-1000语音板,通过实际测试验证了系统的各项功能,证明了USRP在Windows平台上开发简单方便可行。
引言
随着信息化时代的发展,人们日益迫切地要求对讲机具有诸如话音加密、数据传输、远程监控、联网调度等功能,而且要求进一步提高无线频谱的利用率(信道间隔由过去的25kHz到现在的12.5kHz以及6.25kHz),数字通信技术在对讲机及转信台等相关产品中的应用也就迫在眉睫了[1][2]。
数字对讲机采用数字技术进行设计,将语音信号数字化,以数字编码形式传播。数字对讲机与模拟对讲机相比,语音清晰、接收通话信号稳定,数字对讲机不仅能实现模拟对讲机基本业务:单呼、组呼等功能,还具有调度台核查呼叫、区域选择、接入优先、优先呼叫、迟后进入、预占优先呼叫、侦听、动态重组、监听等补充业务[2]。数字对讲机是我国的移动通信系统和设备中的最后一个由模拟转向数字的设备和系统。
本文提出了一种基于USRP的数字对讲机收发系统设计方案。该方案在Windows平台上,利用USRP作为收发前端,在PC机上通过串口RS232连接语音板,上层采用DMR数字通信协议,实现了数字对讲机系统的各项功能。
USRP介绍及系统开发平台选取
USRP介绍
USRP(Universal Software Radio Peripheral,通用软件无线电外设)旨在使普通计算机能像高带宽的软件无线电设备一样工作。USRP是一个非常灵活的USB设备,包含一个小的母板,母板包含4个12bit/64M抽样率的ADC,4个14bit/128M DAC,一个百万门的FPGA芯片和一个可编程的USB2.0控制器。每个USRP母板支持4个子板,2个接收,2个发射[3]。它的结构框图如图1所示。

如图1所示,USRP通过USB2.0与处理器相连。接收器链从高度敏感、可接受微小信号的模拟前端开始,然后使用直接下变频将它们数字化为同相(I)和正交(Q)基带信号。下变频后有高速模数转换器和一个DDC,用以降低采样率并将I和Q打包传输到主机。发射器链从主机开始,生成I和Q并通过USB2.0输到USRP硬件,DUC为DAC准备信号,然后I-Q进行混合,直接上变频信号以产生一个RF频率信号,然后进行信号放大与传输。
开发平台选取
目前开发USRP的工具有四种,分别是Linux品台下的GNUradio,还有Windows平台下的VC,Simulink,Labview。
GNU Radio是Linux上一个软件无线电软件,通过最小程度地结合硬件USRP,用软件来定义无线电波发射和接收的方式,搭建无线电通信系统的开源软件系统[3]。Labview是由NI提出的一款开发USRP的工具,用户可以开发自定义的无线通信协议并且实现实时运行的物理层数字链路。但是目前Labview只支持USRP-292x。MATLAB和Simulink连接Ettus Reseach公司的USRP,可以提供无线电回路设计和建模环境。它是由德国KIT大学开发的,只支持USRP2,还不是很完善。各个平台之间对比:
通过表1可知,相对于Linux平台而言,Windows平台开发更方便有以下几个优点:第一,Linux的操作比较复杂,Windows的比较简单,快速开发;第二,Windows可视化的界面编辑器,方便开发对讲机的界面对话框;第三,Windows是微软的东西,VC也是,自然会比其他公司的开发工具在兼容性等各方面要好;第四,Linux速度比较快,安全性比Windows好,但是有很多软件只能在Windows里运行,与Linux兼容的软件正在开发中,不方便调用PC里面的API和外面接口。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)

而用VC开发通信协议程序比较方便,USRP的通用驱动UHD也是用VC开发的,相比较与Simulink和Labview,在VC上开发,更具优势,更适合本项目的开发。并且Simulink和Labview都只支持USRP2,开发还不是很成熟,工具也不方便[4][5]。本次验证系统采用的是USRP1,USRP1采用的是USB2.0接口,相对于USRP2以太网接口简单方便,母版上采用的是Altera的FPGA芯片,容易开发,并且价格便宜。所以,采用USRP1在Windows上用VC进行开发。
USRP在Windows上开发接口
UHD是由Ettus Resarch开发的,为其产品提供宿主驱动(host driver)和API。本次设计在Windows平台下,采用UHD驱动。在安装UHD驱动时,需要安装cmake,Boost,libUSB等插件,然后解压UHD源码,通过cmake交叉编译实现,可以得到UHD下面的各个项目工程。Boost和lib
USRP Windows DMR 数字对讲机 FPGA 201310 相关文章:
- 了解RF无线电广播(03-12)
- 一种数字对讲机收发系统的设计方案(06-12)
- UHF RFID系统中直接解码碰撞的新方案(01-20)
- 智能手机成熟稳定性的关键——选对平台(04-01)
- 三大智能手机操作系统性能评测(04-12)
- Windows Server 2012网络虚拟化技术的作用(11-06)
- 妤傛ḿ楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閸忋劍鏌熸担宥咁劅娑旂姴鐨犳0鎴滅瑩娑撴氨鐓$拠鍡礉閹绘劕宕岄惍鏂垮絺瀹搞儰缍旈懗钘夊閿涘苯濮幃銊ユ彥闁喐鍨氶梹澶歌礋娴兼ḿ顫呴惃鍕殸妫版垵浼愮粙瀣瑎...
- 娑擃厾楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
缁箖鈧拷30婢舵岸妫亸鍕暥閸╃顔勭拠鍓р柤閿涘奔绗撶€硅埖宸跨拠鎾呯礉閸斺晛顒熼崨妯烘彥闁喕鎻崚棰佺娑擃亜鎮庨弽鐓庣殸妫版垵浼愮粙瀣瑎閻ㄥ嫯顩﹀Ч锟�...
- Agilent ADS 閺佹瑥顒熼崺纭咁唲鐠囧墽鈻兼總妤勵棅
娑撴挸顔嶉幒鍫n嚦閿涘苯鍙忛棃銏n唹鐟欘枃DS閸氬嫮顫掗崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱遍崝鈺傚亶閻€劍娓堕惌顓犳畱閺冨爼妫跨€涳缚绱癆DS...
- HFSS鐎涳缚绡勯崺纭咁唲鐠囧墽鈻兼總妤勵棅
鐠у嫭绻佹稉鎾愁啀閹哄牐顕抽敍灞藉弿闂堛垼顔夐幒鍦欶SS閻ㄥ嫬濮涢懗钘夋嫲鎼存梻鏁ら敍灞藉簻閸斺晜鍋嶉崗銊╂桨缁崵绮洪崷鏉款劅娑旂姵甯夐幓顡嶧SS...
- CST瀵邦喗灏濆銉ょ稊鐎广倕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閺夊孩妲戝ú瀣╁瘜鐠佽绱濋崗銊╂桨鐠佸弶宸緾ST閸氬嫰銆嶉崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱濋崝鈺傚亶韫囶偊鈧喕鍤滅€涳附甯夐幓顡塖T鐠佹崘顓告惔鏃傛暏...
- 鐏忓嫰顣堕崺铏诡攨閸╃顔勭拠鍓р柤
娑撳洣绗€妤傛ɑ銈奸獮鍐叉勾鐠у嚖绱濇潻娆庣昂鐠囧墽鈻兼稉杞扮稑閸︺劌鐨犳0鎴炲Η閺堫垶顣崺鐔枫亣鐏炴洘瀚甸懘姘剧礉閹垫挷绗呴崸姘杽閻ㄥ嫪绗撴稉姘唨绾偓...
- 瀵邦喗灏濈亸鍕暥濞村鍣洪幙宥勭稊閸╃顔勭拠鍓р柤閸氬牓娉�
鐠愵厺鎷遍崥鍫ユ肠閺囨潙鐤勯幆鐙呯礉缂冩垵鍨庨妴渚€顣剁拫鍙樺崕閵嗕胶銇氬▔銏犳珤閵嗕椒淇婇崣閿嬬爱閿涘本鍨滅憰浣圭壉閺嶉绨块柅锟�...