R820T电视棒软件无线电跟踪飞机飞行轨迹.docx

上传人:b****1 文档编号:588824 上传时间:2023-04-29 格式:DOCX 页数:13 大小:3.02MB
下载 相关 举报
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第1页
第1页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第2页
第2页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第3页
第3页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第4页
第4页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第5页
第5页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第6页
第6页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第7页
第7页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第8页
第8页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第9页
第9页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第10页
第10页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第11页
第11页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第12页
第12页 / 共13页
R820T电视棒软件无线电跟踪飞机飞行轨迹.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

R820T电视棒软件无线电跟踪飞机飞行轨迹.docx

《R820T电视棒软件无线电跟踪飞机飞行轨迹.docx》由会员分享,可在线阅读,更多相关《R820T电视棒软件无线电跟踪飞机飞行轨迹.docx(13页珍藏版)》请在冰点文库上搜索。

R820T电视棒软件无线电跟踪飞机飞行轨迹.docx

R820T电视棒软件无线电跟踪飞机飞行轨迹

R820T电视棒+软件无线电跟踪飞机飞行轨迹

来源:

http:

//www.rootoorotor.org/作者:

佚名时间:

2013-07-18TAG:

捕获到的飞机飞行轨迹:

一、声明:

本文参照并学习了putaoshu博客的教程,本文的部分内容摘自其博客,在此向putaoshu大牛表示感谢!

其他参考的国外资料:

http:

//osmocom.rtlsdr.org//trac/wiki/rtl-sdr

二、理论基础:

先了解两个名词

ADS-B:

ADS-B是”广播式自动相关监视”的英文缩写(AutomaticDependentSurveillance–Broadcast),它主要实施空对空监视,装备了ADS-B的飞机通过广播的方式报告自身的精确位置和其它数据(如速度、高度及飞机是否转弯、爬升或下降等)。

ADS-B接收机与空管系统、其它飞机的机载ADS-B结合起来,在空地都能提供精确、实时的冲突信息。

SDR:

SDR是”软件定义无线电”的英文缩写(SoftwareDefinedRadio)也称软件无线电。

随着移动通信的发展,软件无线电的概念开始广泛流行起来。

主要由于多种数字无线通信标准共存,如GSM、CDMA-IS95等,每一种制式对其手机都有不同的要求,不同制式间的手机无法互连互通。

为了解决这个问题,软件无线电方案提出将2MHz~2000MHz的空中信号全部收下来进行抽样、量化,转化成数字信号用软件处理。

换句话说,就是把空中所有可能存在的无线通信信号全部收下来进行数字化处理,从而与任何一种无线通信标准的基站进行通信。

即用计算机软件进行通信信号解调。

软件无线电技术的研究和开发已经有几十年的历史了,最初源于美军的多制式电台项目。

如果还想更多的了解这些知识请自己搜索:

本文中所采取的方法:

1.通过安装电视棒破解驱动,开启其支持的所有频段的接收频率,包括接收ADS-B在978Mhz、1090Mhz发射的脉冲信号。

2.使用SDR的方式来解调信号,即使用软件承担信号解调任务。

因为航空CNS标准是公开的(脉冲位置,相对幅度等)。

而且通过明文传输信息(112个未加密的脉冲字),因此编制解调软件可以正确解调飞机发射的ADS-B信号,从而获得飞机飞行的位置、高度、速度等信息。

3.对获取ADS-B的信息结合地图生成直观的飞行轨迹图。

三、环境搭建:

1.首先你需要的是一个电视棒:

Tuner芯片

频率范围

ElonicsE4000

52–2200MHz,其中1100MHzto1250MHz无法覆盖

RafaelMicroR820T

24–1766MHz

FitipowerFC0013

22–1100MHz

FitipowerFC0012

22–948.6MHz

FCIFC2580

146–308MHz,438–924MHz

目前比较主流的是E4000与R820T,据说E4000已经停产,但兼容性较好。

rootoorotor使用的是R820T,淘宝上有卖,价格50元左右,请自行搜索。

2.你需要的是一个Linux发行版,rootoorotor使用的是kaliLinux来做演示。

3.安装GNURadio:

GNURadio可谓是开源界无线电爱好者的”军火库”。

看名字可能你就猜到了,GNURadio是开源的,并且使用GPL协议开源。

项目主页和介绍:

http:

//gnuradio.org/redmine/projects/gnuradio/wiki

安装GNURadio有三种方式:

(1)自动化安装脚本安装、

(2)使用已经编译好的安装包安装、(3)手动编译安装

以上三种方法中,官网推荐使用自动化安装脚本进行安装,原因是发行版更新源中的GNURadio版本相对较老,且GNURadio更新较快使用安装源里的GNURadio会无法得到最新的技术支持,使用自动化安装脚本可以使用到最新版本的GNURadio,并且省去了手动编译安装的麻烦。

方法一:

使用自动化编译脚本进行安装(推荐)

在您喜欢的文件夹内新建一个src文件夹存放安装脚本源码:

mkdirsrc

进入存放源码与脚本的文件夹:

cdsrc

下载自动化安装脚本并执行:

wgethttp:

//www.sbrac.org/files/build-gnuradio&&chmoda+x./build-gnuradio&&./build-gnuradio

安装过车给中会提示用户是否执行脚本,点击y即可,然后请求root权限等,请根据提示操作,另外编译的时间较长,可能会耗费数小时,请耐心等待。

如果发现无法下载请使用VPN或者代理。

由于rootoorotor使用的是KaliLinux(基于Debian7)因此执行脚本的时候提示无法继续,原因是脚本只支持Debian6,如图:

rootoorotor只能选择方法

(2)中的方法来安装GNURadio(由于rootoorotor人比较懒,英语又不好而且技术太渣,这里就不选择手动编译的方式安装GNURadio了)

查看了自动化编译安装脚本的代码,发现自动化安装脚本目前仅支持以下版本的Linux发行版:

Fedora12至Fedora18,Ubuntu9.04至Ubuntu13.04,Redhat6,Debian6,Mint11或大于11,OpenSuse12.1

其余Linux发行版请使用软件源安装或者手动编译的方式进行安装。

方法二:

使用已经编译好的安装包安装(要求GNURadio版本>=v3.5.3):

你可以通过以下方法安装GNURadio以及UHD已经编译好最新版的安装包:

对于Ubuntu与Fedora的用户,可以在这里下载软件包安装。

DownloadUHD

DownloadGnuRadio

安装之后要设置环境变量,打开终端输入:

$exportPYTHONPATH=$PYTHONPATH:

/usr/lib/python2.7/dist-packages

$exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:

/usr/bin

具体方法请参考:

http:

//gnuradio.org/redmine/projects/gnuradio/wiki/InstallingGR

如果以上方法你还是觉得太麻烦了,也可以安装Linux发行版源里自带的安装包,其优点是可以自动解决依赖问题,缺点是安装包比较旧

在Debian/Ubuntu中查看gnuradio版本可以使用下面的命令:

apt-cacheshowgnuradio|grepVersion

Debian等Deb系的发行版安装方法(要求root权限执行):

apt-getinstallgnuradio

Fedora等RPM系的发行版安装方法(要求root权限执行):

yuminstallgnuradio

方法三:

如果你是个开发人员而且对Linux、C++、Python比较了解,你可下载源代码自行编译安装:

参考:

http:

//gnuradio.org/redmine/projects/gnuradio/wiki/BuildGuide

更多关于GNURadio的介绍、安装使用方法请参考:

http:

//gnuradio.org/redmine/

4.安装rtl-sdr

在安装真正的飞机信号解调软件之前,需要首先安装驱动(也就是破解的控制软件),以便解调软件能够顺利获取解调器中的A/D采样值,下面的步骤就是编译安装rtlsdr库文件以及捕获工具的。

kaliLinux下还要安装下面的安装包,后面的编译才不会缺少模块和报错(这个让rootoorotor折腾了好久。

sudoapt-getinstalllibusb-1.0-0-devlibuhd-devlibboost-all-devgnuradio-devswiglibcableswig-devcableswigpython-swiginaclibfftw3-devlibgsl0-devpyqt4-dev-toolsswigpython-swiginacgsl-binudevirqbalance

sudoapt-getintallDoxygen(可选)

在编译后面的软件要注意终端中”failed”或者”XXXXNOTFOUND”之类的关键词,因为有些库文件没有安装都可以通过编译,rootoorotor第一次折腾的时候没有注意因此造成一些模块无法正常使用,只能makeuninstall卸载然后再重新编译安装。

下载rtl-sdr

gitclonegit:

//git.osmocom.org/rtl-sdr.git

进入下载好的源码文件夹

cdrtl-sdr

如图所示:

编译安装rtl-sdr

mkdirbuild

cdbuild/

cmake../-DINSTALL_UDEV_RULES=ON

sudomakeinstall

sudoldconfig

编译时要注意看回显信息,make的时候看有没有failed之类的信息,下面是我部分make的信息

sudomakeinstall之后要看看没有提示未安装成功的信息,编译安装完成之后如图:

接下来还需要把rtl-sdr作为组件安装到gnuradio中,方法大同小异:

首先进入一个你想存放源代码的目录,然后:

gitclonegit:

//git.osmocom.org/gr-osmosdr

cdgr-osmosdr/

mkdirbuild

cdbuild/

cmake../

make

sudomakeinstall

sudoldconfig

接下来你就可以测试电视棒了:

将电视棒插入电脑的USB接口:

在终端中输入:

rtl_eeprom

以下是我的测试测试结果,可见电脑已经识别了电视棒

这时已经可以使用rtl_fm命令收听广播,比如我使用下面的命令收听广西交通台:

rtl_fm-W-f100.3M|play-r32k-traw-esigned-integer-b16-c1-V1-

关于rtl_fm的用法您可以使用如下命令查看

rtl_fm–help

这里有相关教程(英语),包括收听航空频率,扫描#警*用频率等……

在破解驱动安装好并测试电视棒可用之后接下来的工作就是安装信号解调软件,步骤如下:

打开终端输入:

gitclone

cdgr-air-modes/

在编译开始前,最好看一下README文件,里面说明了安装方法已经一些软件的依赖:

catREADME|more

这里贴出需求的依赖软件包供大家参考:

REQUIREMENTS

gr-air-modesrequires:

*Python>=2.5(writtenforPython2.7,Python3.0mightwork)

**NumPyandSciPyarerequiredfortheFlightGearoutputplugin.

*Gnuradio>=3.5.0

*EttusUHD>=3.4.0forusewithUSRPs

*osmosdr(anyversion)forusewithRTLSDRdongles

*SQLite3.7orlater

*CMake2.6orlater

确认您当前使用的操作系统可以满足以上需求之后,接下来开始编译安装:

mkdirbuild

cdbuild

cmake../

make

sudomakeinstall

sudoldconfig

至此,所有环境配置完成,接下来就是把电视棒接入USB接口做测试了。

三、测试与结果:

使用下面的命令查看用法。

modes_rx–help

如果想现在开始捕获ADS-B的信号,你需要把电视棒的天线尽量伸出窗外,然后直接在终端中输入:

modes_rx–gain=60–output-all–rtlsdr–kml=xxx.kml

可以用–gain调整增益,增益高一些接收能力强一些。

xxx.kml是把接收到的飞机航班号位置高度信息等存为kml文件的文件名。

正常的话应该就可以看到捕获到的ADS-B的信号,如图:

在等待一段时间之后,按ctrl+c终止信号捕获,这时可以发现在用户的当前目录下生成了.kml的文件,里面记录着飞机的飞行轨迹参数。

如果要结合地图查看该文件可以使用下面的软件:

sudoapt-getinstallgpsprune

运行gpsprune;选择:

”文件”—“打开”即可导入kml文件并查看飞行轨迹,如图:

使用googleearth也可以查看,KaliLinux下安装方法大致如下(非必要,方法不唯一,仅供参考):

sudoapt-getinstallgoogleearth-package

sudoapt-getinstallalienlib32nss-mdnslibfreeimage3lsb-coremsttcorefontspaxrpmttf-dejavuttf-bitstream-vera

make-googleearth-package–force

sudodpkg-igoogleearth*.deb

wgethttp:

//ftp.debian.org/debian/pool/non-free/n/nvidia-graphics-drivers/libgl1-nvidia-glx_313.26-1_i386.deb

dpkg-deb–extractlibgl1-nvidia-glx_313.26-1_i386.deblibgl1

cdlibgl1

sudocpusr/lib/i386-linux-gnu/nvidia/current/libGL.so.1/usr/lib/googleearth

sudocpusr/lib/i386-linux-gnu/tls/libnvidia-tls.so.313.26/usr/lib/googleearth

sudocpusr/lib/i386-linux-gnu/libnvidia-glcore.so.313.26/usr/lib/googleearth

解决乱码:

cd/usr/lib/googleearth/lang

sudomvzh-Hants.qmzh-Hants-bk

完成之后启动googleearth点击“File”–“Open”即可导入kml文件:

googleearth查看kml效果图:

googleearth可以使用3D视角查看飞行轨迹图,非常漂亮。

另外,还可以在这个网站导入kml文件:

如果您使用软件已经可以查看到捕获的飞行轨迹图说明已经完成可本文所有的工作。

本人不才,以上内容纯属没事瞎折腾…..文中有疏漏的地方欢迎指导~在下感激不尽!

四、后续:

ADS-B明文传输可能会造成一定的安全隐患(注入式幽灵飞机)可以参考这里:

不过rootoorotor听说ADS-B会改进安全机制….未来本文提供的方法可能失效。

如果本文对你有所帮助是我的荣幸!

但也请想要折腾实践的朋友务必遵守相关无线电法规,后果自负。

我国现行无线电管理的法律法规体系参考:

RTL2832U+R820T电视棒飞机的教程

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2