开发者社区> 天一涯> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

对 GNU Radio 进行 Octave 分析

简介:
+关注继续查看


Octave 是 GNU Radio 的最流行的分析工具,鉴于此 GNU Radio 软件包也包含它自身的一组脚本( scripts )用于读取和语法分析输出。

安装- Installing

可以从源码( source)来安装 Octave,或者在 Ubuntu 内使用如下命令:

sudo apt-get install octave

以便 GNU Radio 的 Octave 脚本能够被直接使用,必须在 Octave 的路径变量中添加 GNU Radio 的路径。 这通过操作 Octave 的配置文件 ~/.octaverc 很容易被做到。查看清楚 GNU Radio 的路径 /home/username/gnuradio/。然后把如下内容添加到 ~/.octaverc:

addpath("/home/username/gnuradio/gnuradio-core/src/utils/")

数据的语法分析 - Parsing Data

从语法上分析 GNU Radio 的数据输出,最便捷的方法便是使用 GNU Radio 提供的脚本。如上安装指导所示,确保把 GNU Radio 的脚本的路径已经添加到 Octave 的路径中。这便可帮助读取那些使用 gr.file_sink (大小、文件名) 顷倒到磁盘的数据。

下面的方法函数是基于参数 size 的用在 gr.file_sink() 内的,它把文件名作为第一个参数、第二个参数是可选项,它表示了从文件中要读取的数量。

  • read_complex_binary(): gr.sizeof_gr_complex
  • read_float_binary(): gr.sizeof_float
  • read_int_binary(): gr.sizeof_int
  • read_short_binary(): gr.sizeof_short
  • read_char_binary(): gr.sizeof_char

比如:在 Python 脚本中,使用 gr.file_sink(gr.sizeof_gr_complex, "capture.dat") 获取了 64 位的复合数据如下:

c=read_complex_binary('capture.dat');

从 USRP 直接能获取的数据是以 32 位复合数据形式存储的,而不是 64 位复合型 (gr.sizeof_gr_complex)。为了能读取此数据,首先,使用 read_short_binary() 然后将其分离进入 - a two dimensional vector 如下:

d=read_short_binary(data);
c=split_vect(d,2);

图形绘制 - Plotting

使用 Octave 来绘制数据,最简便的方法是使用 gnuplot。可以从源码(source)来安装或者在 Ubuntu 上键入如下命令:

sudo apt-get install gnuplot

在时间轴上的 I 和 Q,可如下分别地绘制各个元素:

plot([real(c), imag(c)])

如下可生成一个 I/Q 曲线(x 表示 I ,y 表示 Q):

plot(c)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
源码分析 RocketMQ DLedger 多副本存储实现
源码分析 RocketMQ DLedger 多副本存储实现
20 0
源码分析 RocketMQ DLedger 多副本存储实现
详细介绍了RocketMQ DLedger 多副本存储实现部分,主要参考RocketMQ 存储部分的设计理念,并重点阐述 DLedger 消除存储格式、索引文件存储格式,诸如内存映射、刷盘、过期文件删除、文件加载与恢复由于在《RocketMQ技术内幕》中详细介绍,故本文并未重复介绍。
2337 0
Java消息队列总结只需一篇解决ActiveMQ、RabbitMQ、ZeroMQ、Kafka
  一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。
1883 0
ZigBee TI ZStack CC2530 4.1 三种网络设备类型
(配套源码、软件、开发板等资源,可移步博客同名QQ群/TB店铺:拿破仑940911) (配套源码、软件、开发板等资源,可移步博客同名QQ群/TB店铺:拿破仑940911)
1028 0
WinCE6.0多国语言软键盘
  N久以前写过一篇《WinCE下自定义的大软键盘》,这个自定义软键盘就是为RM905a+项目来做的。RM905a+的系统分辨率是640*480,WinCE原生键盘小的太小,大的又太大。所以就去除了大软键盘其中很多没必要的按键,既满足了使用需求,又提高了用户体验,不至于一个软键盘就占了大半个屏幕。
1197 0
Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.3.4.1 Edition T-SQL智能感知分析器 完全破解+使用教程
原文:Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.3.4.1 Edition T-SQL智能感知分析器 完全破解+使用教程 Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.
1428 0
屏幕录像软件Community Clips Recorder简介及其使用技巧
一、软件简介 当你想做屏幕录像和录制声音时,还苦于需要付费购买录像软件吗?有没有想过有一款免费的屏幕录像软件可以使用,答案是确定的,在这里我向大家推荐一块免费屏幕录像软件:Community Clips Recorder。
715 0
+关注
135
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载