Lilidream

1279 分类: 日常

射电望远镜——1.用Python读取SDR信息

射电望远镜计划

之前看到了有人用SDR做了一个小的射电望远镜,我也想着做一个吧,计划如下:

  1. 用Arduino制作一个可以与电脑通信和控制的云台,用步进电机制作,有较高的控制精度,用作控制天线指向。
  2. 用Python读取SDR收到的信号再进行处理,SDR用的是某宝最便宜的那种电视棒。
  3. 制作天线。是最复杂的一步,现在还没有构思好。

安装 pyrtlsdr

利用python读取SDR数据,使用 pyrtlsdr 这个模块,根据README提示安装方法有:

  1. pip install pyrtlsdr
  2. 下载源文件进行安装

第一次安装我用了pip安装,导入库的时候会报错:

Error loading librtlsdr. Make sure librtlsdr (and all of its dependencies) are in your path

我先用pip卸载了,再在Github上下载源码进行安装,还是出现同样的问题。
看了源码和谷歌之后,发现这个库需要依赖librtlsdr,但是下载了这个之后并且添加到系统路径之后还是不行。

最后我再次仔细看了README,发现可以通过把需要的“librtlsdr.dll”放到源码的文件夹里,再进行安装,这样就能安装成功了。

运行测试文件试试:

py test.py
Found Rafael Micro R820T tuner
Configuring SDR...
  sample rate: 2.400000 MHz
  center frequency 100.000000 MHz
  gain: 8 dB
Reading samples...
  signal mean: (-0.0008103015376066794-0.0007993211933205375j)
Testing callback...
  in callback
  signal mean: (-0.0008010565065864708-0.0008039287492335251j)
  in callback
  signal mean: (-0.0008095535577506808-0.0008072497797941828j)
Testing spectrum plotting...
Done

Figure_1.png
100.2Mhz为本地电台

成功运行!
为制作射电望远镜打下了基础!

#none

作者: Lilidream

版权: 除特别声明,均采用BY-NC-SA 4.0许可协议,转载请表明出处

目录Content

评论