用开源项目gps-sdr-sim就可以干这个:XXXXXXXXXXXXXXXXXX/osqzss/gps-sdr-sim
不过原版的gps-sdr-sim只能输出一个I/Q信号文件,然后再用相关的软件来把这个I/Q信号文件用SDR发射出去。。没法实时地运行。。
于是fork过来改了一下,加了个用TCP流输出I/Q信号的功能,这样就能和Gnuradio的"TCP Source"连接起来,实时运行。。
不过这样显然不够过瘾,因为原来的gps-sdr-sim只能使用静态的坐标位置或者路径文件。。这样就没法实时改变位置了。。于是又加上了个http的接口,这样就能使用网页地图,想去哪就去哪:
用HackRF来发射,为了限制发射范围,关闭hackrf的RF放大,再加个20dB的衰减器:
使用外部TCXO时钟,要不然HackRF自带的振荡器频率不够准确,信号根本没法被接收。。
用手机接收:
大概一分钟多就能3D FIX了。。
去上海
去杭州
北京某某门
因为用的是十几天前的星历文件,所以GPS时间很显然是错的。。不过可以用-T选项来强制替换信号中的日期/时间来解决。。
下载:
或者:XXXXXXXXXXXXXXXXXX/gym487/gps-sdr-sim-realtime
使用方法:
先用Gnuradio运行XXXXXXc(其中的sdr用的是设为hackrf的osmocom sink,需要换成自己的..)
然后参照XXXXXXXXX运行gps-sdr-sim(需要开启-n选项连接Gnuradio,开启-w选项连接地图服务器
例子:
<code>./gps-sdr-sim -e tro11110.17n -n 1234 -v -d 3600 -w </code>
然后cd进入mapserver目录,
<code>python ./mapper.py </code>
运行地图服务器,访问 http://127.0.0.1:8080/static/XXXXXXXXXXXml 打开地图
然后就可以到处"旅游"啦~
单击地图移动位置
注:
百度地图上取到的坐标和实际坐标有几百米的偏差。。需要注意一下。。
[修改于 7年0个月前 - 2017/05/01 02:10:15]
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |