没有合适的资源?快使用搜索试试~ 我知道了~
首页GNU Radio入门学校材料.pdf
资源详情
资源评论
资源推荐

海曼无限 WWW.OPEN-MESH.COM.CN / GNURADIO 中国 WWW.GNURADIO.CC
GNU Radio 入门
GNU Radio / USRP / OpenBTS
Version 0.99
译作者
译作者译作者
译作者:
::
:黄琳
黄琳黄琳
黄琳 等
等等
等
7/21/2010

2
前 言
GNU Radio 是一个软件无线电软件,与便宜的(相对于大多数软件无线电板卡
来说)USRP 结合在一起,就构成了一个非常灵活的开发平台,让我们可以像
开发小软件一样,轻松的开发无线设备。因为它的开放性和低成本,GNU
Radio 和 USRP 现在已经在中国和全世界拥有越来越多的用户。
我从 2005 年开始接触 GNU Radio,作为中国最早的一批 GNU Radio 用户,我
们(我和我的同事们,朋友们,网友们,学生们)在 GNU Radio 上开发了各种
各样的系统,积累了很多经验。
每年,当我们的项目有新人加入的时候,他们往往需要花很长时间阅读网络上
的 wiki,各种零碎的英文文档,从而熟悉这套软件。每到这个时候,我就希望
能有一套系统的中文文档,能够让第一次接触 GNU Radio 的人能够快速的进入
角色。这就是我编写这本书的初衷。另一方面,也希望这本书能够让更多不了
解 GNU Radio 的人了解它,从而开始考虑,是否也可以用软件无线电技术来实
现你想做的东西,你的创意。
今年 4 月,我组织了海曼无限和 GNURADIO 中国论坛的一些朋友,开始编写
这本书。历时两个多月,本书终于初具雏形。很可惜,OpenBTS 的部分还没有
完成,相信会在不久的将来补充进来。
我希望,每一位读者朋友,都用很短的时间读一下这本书,也许半天,也许两
三天,相信你一定会有所收获。对于新人来说,你可以很快的对 GNU Radio 有
一个整体的印象,然后定位在你所关注的要点上;对于已经有 GNU Radio 使用
经验的人来说,你可以快速浏览一遍,也许你会发现,哦这个功能我以前没有
用过,或者激发出你新的想法。
由于大家都是业余时间编写本书,时间仓促,水平有限,书中难免会有错误的
地方,欢迎大家在 www.gnuradio.cc 论坛以及海曼无限的 QQ 群 96384043 对本
书提出宝贵意见,也可以邮件联系我 huanglin_bupt@163.com(有可能时延很
大:P)。
感 谢 参 与 本 书 编 写 的 海 曼 无 限 的 Wu Yanjun 提 供 很 多 中 文 资 料 , 感 谢
gnuradio.cc 的 meteor,qq 群的食杂铺子,leo 和 zhuhu 参与编写。谢谢大家的支
持!
黄琳
2010 年 7 月

3
目 录
第 1 章
GNU Radio 是什么 ..................................................................................... 6
1.1
软件无线电的基本思想 ................................................................................. 7
1.2
软件架构 ......................................................................................................... 8
1.2.1
“Hello World”- Dial tone .................................................................... 8
1.2.2
Flow graph(流图)和 Block(模块) ............................................... 10
1.3
硬件架构 ....................................................................................................... 10
1.3.1
USRP,从启动过程说起...................................................................... 11
1.3.2
数字中频——FPGA 的职责 ................................................................ 11
第 2 章
USRP,GNU Radio 的硬件平台 ............................................................. 13
2.1
USRP 母板 .................................................................................................... 13
2.1.1
模数转换器部分.................................................................................... 14
2.1.2
数模转换器部分.................................................................................... 14
2.1.3
辅助模拟 I/O 端口 ................................................................................ 15
2.1.4
辅助数字 I/O 端口 ................................................................................ 15
2.1.5
FPGA ..................................................................................................... 15
2.2
USRP2 母板 .................................................................................................. 18
2.3
子板 ............................................................................................................... 19
2.3.1
Basic TX/RX 子板 ................................................................................. 20
2.3.2
低频发射/接收子板 .............................................................................. 21
2.3.3
TVRX 子板 ............................................................................................ 21
2.3.4
DBSRX 子板 ......................................................................................... 22
2.3.5
RFX 系列子板 ....................................................................................... 22
2.4
电源 ............................................................................................................... 24
2.5
时钟同步问题 ............................................................................................... 24
2.5.1
同步所有子板本地晶振........................................................................ 24
2.5.2
同步多个 USRP..................................................................................... 25
第 3 章
GNU Radio 安装 ....................................................................................... 26
3.1
安装需求 ....................................................................................................... 26
3.2
Ubuntu 下安装 .............................................................................................. 26
3.3
Fedora 下安装 ............................................................................................... 27

4
3.4
装好之后可以做的第一件事 ....................................................................... 29
3.4.1
如果你有 USRP..................................................................................... 29
3.4.2
如果你没有 USRP................................................................................. 30
第 4 章
GNU Radio 编程基础 ............................................................................... 32
4.1
在使用 GNU Radio 之前的预备知识 .......................................................... 32
4.1.1
对 GNU Radio 做一个更清晰的认识 .................................................. 32
4.1.2
数字信号处理(DSP)知识 ................................................................ 33
4.1.3
通信系统知识........................................................................................ 34
4.2
如何编写 Python 应用程序——逐行学习 .................................................. 34
4.2.1
概述........................................................................................................ 34
4.2.2
FM 接收机源代码 ................................................................................. 35
4.2.3
第一行.................................................................................................... 37
4.2.4
导入需要的模块(module)................................................................ 38
4.2.5
顶层模块 wfm_rx_graph ....................................................................... 40
4.3
流图,模块和连接的原理 ........................................................................... 44
4.3.1
顶层模块 my_top_block ....................................................................... 45
4.3.2
运行程序................................................................................................ 48
4.4
图形界面的使用 ........................................................................................... 48
4.4.1
频谱分析仪............................................................................................ 49
4.4.2
wxPython 是如何工作的 ...................................................................... 49
4.4.3
示波器.................................................................................................... 53
4.5
处理命令行参数 ........................................................................................... 53
4.6
GNU Radio 中常用的 block ......................................................................... 54
4.6.1
信号源.................................................................................................... 55
4.6.2
信宿(Signal Sinks) ........................................................................... 58
4.6.3
简单运算(Simple Operators) ........................................................... 59
4.6.4
类型转换(Type Conversions) .......................................................... 62
4.6.5
滤波器(Filters) ................................................................................. 63
4.6.6
FFT ......................................................................................................... 68
4.6.7
其他一些有用 block .............................................................................. 69
4.7
如何编写 C++ blocks ................................................................................... 70
4.7.1
最简单的方法——利用模板................................................................ 70

5
4.7.2
block 的结构和原理 .............................................................................. 74
4.7.3
命名规则................................................................................................ 80
4.7.4
如何把 C++与 Python 连接在一起 ...................................................... 81
4.8
如何使用外部库文件 ................................................................................... 84
第 5 章
应用范例解读 ........................................................................................... 86
5.1
OFDM Tunnel ............................................................................................... 86
5.1.1
系统框图和 MAC 帧的构成 ................................................................. 87
5.1.2
物理层.................................................................................................... 88
5.1.3
开发和调试方法.................................................................................... 90
5.2
MIMO............................................................................................................ 91
5.2.1
MUX 参数的含义 ................................................................................. 91
5.2.2
代码示例:2 天线接收 ......................................................................... 94
5.2.3
代码范例:2 天线发射 ......................................................................... 96
第 6 章
GNU Radio 的其他应用 ......................................................................... 101
6.1
商业应用 ..................................................................................................... 101
6.2
国防和国土安全 ......................................................................................... 101
6.3
无线研究 ..................................................................................................... 102
6.4
教学 ............................................................................................................. 102
6.5
其他应用 ..................................................................................................... 103
第 7 章
其他的 SDR 平台简介 ............................................................................ 104
7.1
几种 SDR 平台简介 ................................................................................... 104
7.2
微软的 SORA ............................................................................................. 106
7.2.1
SORA 上已经实现了什么系统? ...................................................... 106
7.2.2
硬件接口板:RCB(Radio Control Board) .................................... 107
7.2.3
软件架构.............................................................................................. 108
7.2.4
如何提高 CPU 做通信信号处理的速度 ............................................ 108
7.2.5
SORA 对 TDMA 的支持 .................................................................... 110
剩余109页未读,继续阅读















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0