内容简介:这几年玩了很多种 SDR 开发板,春节封路,在家闲着没事,也在尝试着玩各种天线,分析解码不同协议的无线信号,以此打发时间。上学的时候,玩过一段时间的电视卫星(中六、亚太五),介于气象卫星和电视卫星存在一些相通性,便在近期开始尝试接收、解码气象卫星信号。国家级卫星地面站往往占地十几
0×00 前言
这几年玩了很多种 SDR 开发板,春节封路,在家闲着没事,也在尝试着玩各种天线,分析解码不同协议的无线信号,以此打发时间。
上学的时候,玩过一段时间的电视卫星(中六、亚太五),介于气象卫星和电视卫星存在一些相通性,便在近期开始尝试接收、解码气象卫星信号。
国家级卫星地面站往往占地十几 公顷,投入数千万进行建设、 安装、调试。作为火腿一枚通信爱好者来说,往往很难拿出这么多钱烧这个爱好。这个时候软件无线电低成本的优势就凸显了出来。我们可以通过现有的SDR 硬件加上DIY 制作特定的天线,便可以花费几百上千块钱实现接收、解码气象卫星的信号。
老挝万象卫星地面站
武汉大学诗琳通地球空间信息科学国际研究中心THEOS遥感卫星地面站
在韩国 国家气象卫星官网(NMSC) 可以查到很多GEO-KOMPSAT-2A卫星(简称 GK-2A) 的详细资料,包括射频参数 。
GK-2A部分参数:
传输示意图:
0×01 硬件:
前期相关资料、参数的收集整理基本上都可以通过上面的方法来完成,后面我们则考虑怎么接收、解码卫星的信号。
接收、解码这一步必不可少的是天线、SDR 硬件、SDR 软件。另外,因为气象卫星在很高很远的地方,当信号通过无线传输到地面的时候其信号强度往往已经微乎其微,所以我们需要通过低噪音放大器(low-noise amplifier 简称 LNA) 将信号放大,以便电脑识别、处理。
在这里用到了:
SDR:RTL-SDR v3 、Airspy Mini LNA:Nooelec’s SAMbird+GOES 2.4GHz网格天线 + 买投影or买相机送的三脚支架
天线是从淘宝买的 2.4Ghz放大WiFi 信号的接收设备,虽然频率是 2.4Ghz,但是国内外很多火腿用这款天线接收1.7Ghz 左右的卫星信号。
花了半天时间拆快递、组装天线,装完后:
上面的图是室内,在室外接收的时候需要调整天线,修正垂直、水平极化方式:
SDR+LNA特写:
0×02 Windows
安装 GNURadio
wget http://www.gcndevelopment.com/gnuradio/downloads/installers/v1.6.0/gnuradio_3.7.13.5_win64.msi
安装 Python 3.7
wget https://www.python.org/ftp/python/3.7.5/python-3.7.5-amd64.exe
安装依赖库
pip install pycryptodome pip install jdcal
启动 GNURadio 执行LRIT Demod.grc流图:
运行xritdecoder.exe、运行UDP-bridge.bat、运行xrit-rx.bat:
@usa_satcom 有写一些气象卫星解码用的软件,如 XRIT_Decoder 、 XHRPT decoder ,本来打算找作者购买软件授权 License key,结果被告知软件不向中国用户提供购买服务… 这里猜测应该是之前有国内用户试用他的软件,在 30 天试用期内破解了作者的软件然后在网上宣传,最后导致作者拒绝向国内用户提供软件下载和购买使用。后面改用 Linux 进行解码。
0×03 Linux Ubuntu 16.04
安装依赖:
sudo apt-get install -y \ build-essential \ cmake \ git-core \ libopencv-dev \ zlib1g-dev
安装RTL-SDR驱动:
git clone https://github.com/osmocom/rtl-sdr.git cd rtl-sdr mkdir build cd build cmake ../ -DINSTALL_UDEV_RULES=ON make -j8 sudo make install sudo ldconfig cd ../..
安装AirSpy驱动:
git clone https://github.com/airspy/airspyone_host cd airspyone_host mkdir build cd build cmake ../ -DINSTALL_UDEV_RULES=ON make -j8 sudo make install sudo ldconfig cd ../..
安装GOES Tool:
git clone --recursive https://github.com/sam210723/goestools cd goestools mkdir build cd build cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/local make -j8 sudo make install cd ../..
安装XRIT-RX:
git clone https://github.com/sam210723/xrit-rx cd xrit-rx pip3 install pycryptodome pip3 install Pillow==5.0.0
启动monitor:
goesrecv -i 1 -c goestools/etc/goesrecv.conf python3 xrit-rx.py
校准天线:
打开 gqrx,将频点设为卫星中心频率,如天线以对准卫星,瀑布图上可以看到很明显的信号,北京地区将天线对准大概东南方向的位置即可。
信号成功接收
接了LNA和没接LNA的对比
GK-2A在 1692.14MHz每隔十分钟向地面传输一次图像,比如16:00:20 开始第一次传输,到 16:04:00 传输完成,下次将在 16:10:20 至 16:14:00 左右传输第二次。
接收到的加密文件将存在XRIT-RX/received/LRIT/$年月日/目录中,如:
IMG_FD_049_IR105_20200123_082006_01.lrit –IMG_FD_049_IR105_ 20200123 _082006_10.lrit:
FD 目录为卫星拍摄的Full Disk全盘图像
10 个FD目录中的 lrit 文件可解出一张 JPG 图片,在 tools 目录中有用于解码的 lrit-img.py脚本:
python3 lrit-img.py Path of FD
通过Python脚本可对图像红外增强成像:
当解码出足够多图像文件,通过合成,可将图片转成GIF动图:
网盘:
https://mega.nz/#F!UMEV1IjQ!7DYoheHZCTJuInIiptlNgw
YouTube:
https://www.youtube.com/watch?v=xdeXO2BGqvM
以上所述就是小编给大家介绍的《DIY天线+SDR+GNURadio实现低成本接收解码韩国GK-2A气象卫星信号》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Netty-解码器架构与常用解码器
- Glide 缓存与解码复用
- 音频解码 Audio Converter
- golang之Json编码解码
- 解码器 与 编码器
- WeIdentity 源码分析 | 狗哥解码(一)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。