基于GNU Radio架构的信号处理实验平台开发

2016-12-05 10:08张建良齐冬莲
实验技术与管理 2016年11期
关键词:信号处理探究性实验教学

张建良, 吴 越, 齐冬莲

(浙江大学 电气工程学院, 浙江 杭州 310027)



基于GNU Radio架构的信号处理实验平台开发

张建良, 吴 越, 齐冬莲

(浙江大学 电气工程学院, 浙江 杭州 310027)

开发了基于GNU Radio的信号分析与处理实验平台。借助GNU Radio完全开源的信号分析处理平台,既能够提供开放式可修改的模块库,以便快速建立关于信号处理的流程并进行内容设计、仿真,又能够用来连接真实的信号接收和处理系统,方便进行综合性和探究性实验设计。该实验平台的建立,方便学生以更加灵活的学习形式获取专业的资源,进行更加灵活多样的学习和互动,并有助于提高实验教学效果。

信号分析与处理; 实验平台; GNU Radio; 实验教学改革

传统信号实验大多基于硬件电路完成,实验手段单一,很多复杂的实验难以实现,因而在一定程度上影响了学生对“信号分析与处理”课程基本内容的理解和掌握[1-4]。

目前高校信号类课程实验平台主要可以分为3类:

(1) 以高校自制和教仪公司成套产品为代表的第一代验证性实验平台。这类平台主要配合实验课程内容,以设计简单、操作方便为特点,主要通过完成电路的设计和搭建,实现对信号基本概念的验证。这类仪器的特点是体积较大、功能单一、扩展性和可靠性较差。

(2) 以Matlab和Labview+Mydaq为代表的第二代综合性实验平台[1-9]。此类平台注重利用计算机软件资源实现对信号的分析和处理,结构紧凑、使用灵活、可扩展,也便于开展综合性实验。然而,这类平台结构比较封闭,修改内容和扩展应用也比较困难,一些实验还需要设计硬件电路来配合。这类平台集成程度高、价格昂贵、维护和维修困难,不利于课下大规模实验使用。

(3) 清华大学、上海交大和华中科大等部分大学开发的具有开放性、便携性和探究性特点的第三代实验平台[8-10]。这类平台注重加强学生对信号基本知识的理解和转化,借助于丰富的计算机网络资源,对实验内容和实验形式做了彻底的改进,既加入了学生感兴趣的日常应用实验内容,如对电力信号、手机信号、声音信号等获取、分析和处理[8-12],也注重互动性,能够设计和开展探究性实验,提高了教学方式的灵活性和知识理解的深度和广度。

本文基于模块化和互动性的实验教学思想,开发了基于GNU Radio的完全开源的信号分析与处理实验平台[13-15]。该平台既能提供开放式可修改的模块库,方便用户快速建立关于信号处理的实验流程并进行内容设计和仿真,又能够用来连接真实的信号接收和处理系统,方便开展综合性和探究性实验设计。

1 实验平台的组成结构

基于GNU Radio架构的信号分析与处理实验平台由信号源、信号接收端硬件、以GNU Radio为基础的信号分析与处理软件以及显示器模块组成。整个实验平台的体系架构如图1所示。实验系统的设计理念为:在GNU Radio体系架构下,模块化、标准化的硬件单元以标准开放的形式连接起来,形成一个通用实验平台,通过软件加载和重新设计来实现各种信号分析与处理模块,有助于将“信号分析与处理”实验教学的重心转移到对信号基本概念和原理的理解和实现上,从而专注于利用信号理论本身开展对新系统、新知识、新应用的开发和探索。

图1 实验平台的体系架构

GNU Radio提供信号处理模块的库,包括对“信号分析与处理”课程中滤波器、FFT 变换、调制/解调器、信道编译码等模块,并且允许使用者根据自己的需要定制和改造现有的信号处理模块,提供流向图(flow graph)连接机制,把单个的处理模块连接在一起,组成信号分析与处理系统。

基于远程开源平台的实验设计思路,方便学生以更加灵活的学习形式获取专业的资源,可以实现在不同场合和时间参与实验,有助于将实验教学从课堂扩展到课外,提供更加灵活多样的学习和互动形式,锻炼学生在信号处理算法实现和探究性实验设计方面的综合素质,不断提高实验教学效果。

1.1 信号源

在GNU Radio架构下,实验平台的信号源为频率2~6 000 MHz的电磁信号。根据接收端硬件中射频芯片的功能,将信号源发出的电磁信号接收下来进行抽样、量化并转化成数字信号,供软件模块进一步分析和处理。信号源的类型多样,包括常见的无线电广播信号、GPS信号、GSM信号、雷达信号等。

1.2 信号接收端硬件部分

信号接收端硬件部分是具有开放性、标准化、模块化的通用硬件平台,目前比较成熟的主要有HackRF、USRP和RTL2832U等模块。由于RTL2832U模块覆盖了常见的信号源频段,同时具有较高的性价比,因而拥有强大的用户基础和众多的开发者团体,也是笔者开发信号分析与处理实验平台的最佳选择。

通过配合调谐器芯片(例如R820T或E4000),可以用天线接收频率范围为24~1 766 MHz或者24~2 200 MHz的信号,其中调谐器内置了混频器(E4000是零中频模式,R820T是低中频模式)。混频器输出信号经过PGA放大后输入RTL2832U的ADC功能模块(E4000是I/Q两路,R820T只有I一路),ADC采集的信号数据直接通过USB送到软件处理模块进一步处理,实现利用软件对信号分析和处理的目的。

1.3 信号分析与处理软件部分

GNU Radio是一个最小程度地结合硬件(例如RTL2832U),而用软件来实现信号分析与处理的软件体系。GNU Radio应用程序用Python语言编写,真实的信息处理过程是由C++浮点扩展库实现的。GNU Radio还是一个全球性的开源软件,其开放性和互动性的特点方便探究性实验教学内容的丰富和实施形式的改进。

利用具有较高执行效率的C++语言编写各种信号处理模块(如滤波器、FFT 变换、调制/解调器、信道编译码等模块),可以实现信号分析与处理课程中基本的理论内容;利用语法简单、完全面向对象的Python脚本语言来构造流向图,从而连接各个模块成为完整的信号处理流程。GNU Radio 的软件结构允许用户根据实际应用要求对信号处理模块进行改进,以获得预期的性能;并通过“黏合剂”——流向图来完成信号处理的全流程。用户除了能够开发自己的信号模块之外,还可使用GNU Radio 内嵌的利用CPU增强指令集模块,完成功能更加丰富、效率更高的实验内容。

软件处理模块的实验原理为:(1)GNU Radio是一个信号处理模块和开发者互动的软件框架,具有一个广泛的标准库的块,允许连接外围硬件电路并和现有软件模块结合,形成更加复杂的信号处理流程图,完成诸如同步、分析和可视化等标准任务;(2)通过编写基本信号处理模块,设计基础智能信号分析处理单元,并实现相应的信号处理逻辑;(3)通过开发具有特定功能的高级模块,可以实现对输入和输出数据的分析控制;(4)GNU Radio中模块化和图形化的信号处理特点,使得开发者不用关心这些数据如何在模块间流动,一旦程序连接好,功能模块会自动得出信号处理的最终结果并显示出来。

实验平台通过灵活的模块化操作,可以定制和改进现有模块,激发学生对信号实验的兴趣;基于强大的网络资源支持,解决实验过程中的问题,培养学生发现问题和解决问题的能力;具有专业的信号处理功能,可以独自仿真或者借助外围设备,拓展信号分析与处理的范围和能力。

GNU Radio软件架构在实验平台中的地位如图2所示。

图2 GNU Radio软件架构在整个实验平台中的地位

2 实验平台的开发目标

根据实验教学和科研开发的需要,该信号处理实验平台的开发主要实现以下目标:

(1) 在课程服务方面,将覆盖信号分析与处理课程中信号的采样、滤波器设计、信号调制与解调等基础实验内容;通过对相关模块的改进,可以扩展形成诸如FM发射与接收、遥控小车信号解析、NOAA卫星接收、GSM信号解调与分析等探究性实验;

(2) 在学生受益面方面,面向电力系统及自动化、电子信息工程、自动化3个专业8个教学班的学生,预计每年超过400人受益;

(3) 在实践教学环节方面,可以利用GNU Radio高度模块化和图形化的软件架构平台以及具有特定信号采集功能的外围电路模块,结合工业和科研实际来拓展实验内容,服务于本科毕业设计和SRTP等实践教学环节;

(4) 在科研辅助方面,通过对GNU Radio中功能模块部分的优化和完善,实现数字图像处理中的信号频谱分析等信号复杂处理,采用模块化的设计理念和丰富的扩展接口,减少项目开发时间、提高项目的实施效率。

3 实验平台的技术水平及指标要求

(1) 在实验技术水平方面,要实现对现有信号分析处理内容的全部覆盖,采用GNU Radio定制化功能模式,能够进行采样信号数据流的缓冲、调度等复杂处理,实现对真实信号采集前端硬件的全面支持,具有强大的工业应用前景。

(2) 在技术指标方面,借助Realtek RTL2832U等外围信号采集单元,实现24~2 200 MHz信号的采集和处理,覆盖一般工业和民用常用信号的范围。可以使用GNU Radio提供的信号处理模块,也可以将现有信号处理模块嵌入更加复杂的信号处理流程图中。

(3) 在核心指标及技术保证方面,基于GNU Radio模块化和图形化的特点,将信号处理过程分为几个阶段和模块进行,用户只需关注模块的功能;配合USRP、RTL2832U、HackRF等前端信号采集模块,可以实现对不同频率范围内信号的采集、分析和处理。

4 实验平台的应用研究及成果

基于GNU Radio架构的信号处理实验平台,浙江大学电气工程学院近年来在实验教学方面和科研实践方面均取得了丰硕的成果。

4.1 实验教学应用

浙江大学电气工程学院承担了本校“信号分析与处理实验室”的建设以及信号分析与处理课程的实验教学工作,获批国家级精品课程,开发了一系列创新性、综合性实验,编写了《信号分析与处理实验讲义》。

“信号分析与处理”理论教学和实验教学是电气大类本科生的核心课程。在2014—2015学年,电气学院自动化专业的“信号分析与处理”实验教学首次采用了学生研究小组的教学形式,基于GNU Radio配合Realtek RTL2832U的实验开发平台,进行了无线电信息分析、航班信号获取和分析等探究性实验,取得了较好的教学效果。

基于GUN Radio架构的系统化信号分析与处理实验平台整合了现有信号处理实验内容,并结合平台特点和学生兴趣,开发了诸如GSM信号处理、GPS信号接收、飞行航班信号获取与显示等探究性信号实验,以分组形式逐步在电气学院信号大类课程中推广。

4.2 科研辅助研究

浙江大学电气工程学院拥有“控制理论与控制工程”国家重点学科,在电力系统信号分析、复杂信息系统控制领域的研究实力雄厚,在多项国家科技支撑计划、863计划、国家自然科学基金、省部级重大项目的支持下,对信号分析与处理实验平台的建设进行了从理论到实践的深入研究,在信号研究领域获得了丰富的技术积累和实践经验。

基于GNU Radio架构的信号处理实验平台有力地支撑了学院相关科研团队在混沌信号分析和控制理论方面的研究,深入探索了介于随机信号与确定性信号之间的混沌信号的特性,验证了非线性控制策略的有效性。该项研究获得了国家自然科学基金和浙江省杰出青年基金的资助。该实验平台在申请和实施国家高技术研究发展计划(863计划)“配电网信息物理系统关键技术研究及示范”、国家自然科学基金项目“无人机在非合作场景中的分布式控制与优化问题研究”的过程中,提供了重要的实验保障和经验支撑。

5 结语

基于GNU Radio架构的信号处理实验平台的开发,改进了实验教学的形式和效果,有助于将实验教学的重心转移到课程基本知识的掌握上。基于开源平台的实验内容,使实验教学从课堂内扩展到课堂外,方便学生以更加灵活的学习形式获取专业的资源,锻炼学生在信号处理算法实现和探究性实验设计方面的综合能力。该实验平台也为浙江大学电气工程学院开展信号处理技术的科研工作提供了有力的技术支撑和理论储备。

References)

[1] 唐东炜,章敏,王宇华.基于LabVIEW的信号分析与处理实验系统的开发[J].中山大学学报论丛,2006,26(1):36-38.

[2] 陈鸽,常敏慧.Matlab在信号处理系列课程实验中的应用[J].实验技术与管理,2006,23(11):77-80.

[3] 刘峰,段红,熊庆旭,等.信号与系统实验教学改革[J].实验技术与管理,2008,25(3):118-120.

[4] 夏平,向学军,吉培荣.基于MATLAB的信号与系统、数字信号处理实验体系教学实践[J].电气电子教学学报,2004,26(5):73-74.

[5] 王艳芬,史良,王刚.基于MATLAB软件环境的《数字信号处理》课程新实验开发[J].实验技术与管理,2002,19(3):61-63.

[6] 周祥才,杨铮.基于MATLAB的信号采样与重构的实现[J].实验技术与管理,2007,24(2):79-80.

[7] 刘成云,陈振学,孔慧.基于CCS的“信号分析与处理”实验教学[J].实验室研究与探索,2010,29(11):97-100.

[8] 许爽,李敏.综合设计性数字信号处理实验的探讨[J].大连民族学院学报,2010,12(3):96-97.

[9] 孙晖,赵菁.信号分析与处理综合性实验设计与实现[J].实验技术与管理,2012,29(7):161-163.

[10] 刘卫东,孟晓静,王艳芬.语音信号处理实验教学研究探索[J].实验室研究与探索,2008,27(4):72-74.

[11] 高军萍,王霞,李琦,等.数字信号处理课程教学改革的探索与体会[J].电气电子教学学报,2007,29(2):19-21.

[12] 朱金秀,张卓,朱昌平.数字信号处理课程实验教学研究与实践[J].实验室研究与探索,2008,27(5):96-98.

[13] 曹瀚文,王文博.GNU Radio:开放的软件无线电平台[J].电信快报,2007(4):31-34.

[14] 杨宏,孔耀晖,茹晨光,等.基于GNU Radio和USRP的无线通信系统建模仿真[J].现代电子技术,2013,36(18):73-77.

[15] 赵楠,武明虎,周先军,等.基于GNU Radio和USRP的宽频带并行感知平台设计[J].计算机应用研究,2015,32(12):3779-3781.

Development of signal processing experimental platform based on GNU Radio framework

Zhang Jianliang, Wu Yue, Qi Donglian

(College of Electrical Engineering, Zhejiang University, Hangzhou 310027, China)

The signal analysis and processing experimental platform based on GNU Radio is developed. By using the fully open source GNU Radio based signal analysis and processing platform, an open and modifiable library of modules can be provided so as to establish the quick signal processing flow and carry out the content design and simulation. At the same time, the platform can be used to connect the real signal receiving and processing system, which is easy to carry out the comprehensive and exploratory experimental design. The establishment of the experimental platform can help the students to obtain the specialized resources in a more flexible learning method and carry out more flexible and interactive learning, and the platform can also contribute to the improvement of the experimental teaching effect.

signal analysis and processing; experimental platform; GNU Radio;experimental teaching reform

10.16791/j.cnki.sjg.2016.11.040

2016-05-25

国家高技术研究发展计划(863)项目(2015AA050202);国家自然科学基金项目(61503333);浙江省自然科学基金项目(LY15E070001);浙江省教育厅科研项目(Y201533326);浙江大学实验技术研究重点项目(SZD201501);浙江大学本科实验教学自制仪器设备项目(2016046);浙江大学电气工程学院探究性实验立项项目

张建良(1984—),男,河南新野,博士,讲师,主要研究方向为信号分析与处理、复杂工业系统的分析与控制.

E-mail:jlzhang@zju.edu.cn

G642.0

A

1002-4956(2016)11-0161-04

猜你喜欢
信号处理探究性实验教学
小议初中化学演示实验教学
浅析初中化学探究性实验教学
电容器的实验教学
对初中化学实验教学的认识和体会
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
如何在高中数学教学中开展探究性学习
几何体在高中数学实验教学中的应用