问题标签 [gpsd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
7555 浏览

systemd - 通过网络访问 GPSD 端口 2947

使用来自 digitalbarbedwire.com 的帖子中的信息,使用 Adafruit Ultimate GPS 帽子和 PPS 使用最新的 Jessie Lite Raspbian 2017 年 1 月的 RPI2。简单的设置和 PPS 以及所有 gps 命令在本地工作得很好。

我试图让 gpsd 在端口 2947 上接受通过网络传入的请求以导出位置信息(OpenCPN)。我编辑了 /etc/default/gpsd 以添加 -G 选项 GPSD_OPTIONS="-n -G" 但不允许外部请求。如果我停止 gpsd(sudo service stop gpsd),并在前台调用 gps(/usr/sbin/gpsd -N -n -G /dev/ttyAMA0 /dev/pps0,一切正常!所以我猜有一个将gpsd作为守护进程启动的权限问题,但我还没有弄清楚。让我发疯!

有什么建议么?

相关文件:

有任何想法吗?

0 投票
4 回答
1488 浏览

android - 如何使用 GPS 高精度计算每 15 秒的距离

我以 3 种方式获得 GPS 位置Map.getMyLocation().getLatitude(),例如locationManagermGoogleApiClient 但这些对我每 15 秒计算一次距离没有帮助。 问题是位置纬度和经度不准确,即我使用这些方式距离计算步行 1-2 米。计算距离为 400 m-600 米有时也显示 1 kmGPS 位置在 20 米到 600 米之间变化。 请提供一些关于如何通过在 android 中每 15 秒计算一次距离来获得我的位置高度准确度的更好的想法。

这是我的代码

这是我的距离计算方法 ,但这种方法不是问题

0 投票
1 回答
207 浏览

python - PYTHON,LINUX:流式传输到 cmdline

我正在尝试使用gpsd库解码一些非标准 AIS(带有额外信息标记的 nmea 字符串)数据。AIS 数据是从一个不断增加的文本文件中读取的(每天一个,换行符是新数据)。一些处理在 python 中完成,然后推送到 GPSD 解码器进行解码并返回给 python 进行更多工作。目前这是使用 os.system 或 subprocess.check_output (它们都花费相同的时间)和命令完成的:

这行得通,但速度很慢。如果我将所有 NMEA 字符串写入文本文件并进行批量解码,它的速度会快 10-50 倍:

但这不能实时工作,因为我需要尽快处理传入的数据。

有没有办法在 Python 中打开 gpsdecode(或任何其他 cmdline 工具)的管道,在 nmea_strings 准备好时将其发送并读取结果,而无需一直启动/停止该工具?我已经在使用带队列的多处理来加快处理速度,但瓶颈是解码位。

有任何想法吗?

编辑:进一步的测试表明,“缓慢”可能与 cmdline 解码无关。这可能是我在工作人员之间拆分数据的地方。需要做一些分析。

0 投票
0 回答
366 浏览

ubuntu - 与 GPS 的连接无法正常工作。

我正在尝试建立与 gps 的连接,但很遗憾,我无法这样做。首先,我尝试遵循生产者网站的指南:http://odroid.com/dokuwiki/doku.php?id=en: c1_usb_gps ,但输入命令后sudo dpkg-reconfigure gpsd我收到一条消息:

所以我决定自己使用sudo nano /etc/default/gpsd. 所以现在它看起来像这样:

尽管如此,当我使用时,gpsmon我没有得到任何数据,就好像我的 gps 甚至没有插入一样。我试图检查它是否被插入,但我不确定我是否做对了。

非常感谢您的回复!

0 投票
2 回答
635 浏览

c - GPS代码未读取纬度数据

我正在尝试编写代码来返回带有 GPS 天线的盒子的纬度,但是我似乎无法弄清楚如何取回这些数据。远程盒子正在运行 gpsd,我可以看到正在使用 gpspipe 从 GPS 天线检索数据。

以下是我为将 GPS 数据发送到本地机器所做的工作:

  1. ssh -l user x.x.x.x -L 2948:127.0.0.1:2947
  2. gpsd -N -n "gpsd://localhost:2948"

接下来,为了验证我是否正在获取 NMEA 数据,我运行了 gpspipe,我可以看到数据在流动。

我编写了以下 C 代码:

当我运行代码时,我得到以下输出:

等等...

我的问题是:我的代码是否正确?为什么我无法检索任何修复数据?我的设置正确吗?

如果您需要更多信息,请随时询问。谢谢。

0 投票
1 回答
1622 浏览

linux - Linux:用一个进程从串口读取数据,用另一个进程写入

我在 Raspberry Pi 上使用串行 GPS/GNSS 设备时遇到了问题。有问题的设备是一个 u-blox GNSS 接收器,符号链接到/dev/gps.

我尝试实现从该设备记录输出数据并同时向其发送校正数据。

更具体地说,我使用 RTKLIBs ( http://www.rtklib.com/ )str2str工具将 NTRIP/RTCM 校正数据发送到 GNSS 接收器,以便使用 DGNSS/RTK 获得更好的位置估计。接收器的输出数据将由基于 GPS 守护进程 (gpsd) 的 python 脚本记录。

但是,我想主要问题与串口控制有关。当我首先运行写入过程(str2str)然后同时运行任何读取过程(我的python脚本/gpsd前端(例如cgps)/cat)时,读取过程将输出数据几秒钟然后冻结。我使用哪种工具来读取数据并不重要。

我发现了这个问题:https ://superuser.com/questions/488908/sharing-a-serial-port-between-two-processes 。因此,我确保这些进程获得了对设备的 rw 访问权限,甚至尝试以超级用户身份运行它们。此外,我偶然发现了 socat 和虚拟串行端口,但没有发现任何用处。(Linux 的虚拟串行端口

有没有办法用一个进程从串行端口读取数据并用另一个进程写入它?我现在知道的唯一解决方案可能是使用pySerial重写python中的读写过程。这将允许只有一个进程访问串行设备,但这意味着大量的工作。

0 投票
0 回答
93 浏览

python - 从树莓派 GPS 轮询器的 self.current_value 中获取不同的值

我试图弄清楚如何制作一个将在后台运行的脚本,并为我提供 GPS 的当前纬度、经度、海拔等值。我也想让它把速度更新到最大。我发现这个有用的指南 Python GPS 模块:阅读最新的 GPS 数据

但我不知道如何从 self.current_value 获取纬度、经度等。任何帮助将非常感激。

0 投票
1 回答
715 浏览

c - 未使用 libgps 接收任何 GPS 数据

我想用 libgps 读取我的 GPS 坐标。

这是我的代码:

不幸的是,我总是得到这个结果:

GPS-Data:纬度:nan,经度:nan,海拔:nan,时间戳:301989888

所以 gpsd 没有返回任何 GPS 坐标...

但是如果我执行sudo gpscat -s 4800 /dev/ttyACM0

$GPGGA,190238.00,4819.14754,N,01512.57069,E,2,11,0.83,469.6,M,43.1,M,,0000*53

有谁知道可能出了什么问题?

0 投票
1 回答
253 浏览

c++ - GPSD 发送错误的时间

我目前在gspd图书馆里玩得很开心,并注意到我在两个值之间切换的时间 - 实际值(今天)和 1991 年的某个日期。

显示gpsmon时,它通常会显示正确的时间。使用cgps -s显示错误的时间,偏移量大得离谱。

我在网上发现的(到目前为止)唯一可能的问题是系统时间不是最新的,这会混淆 gps 时间,但这里不是这种情况。

我们gpsd通过以下代码访问:

所有其他值(位置、高度等)都是正确的。只是时间没了。

有人知道为什么会发生这种情况吗?提前致谢!

0 投票
1 回答
597 浏览

gpsd - cgps 和 gpsmon 提供不同的值

我目前正在让自己进入 gpsd 并且一直在玩它,直到我注意到以下问题:

控制台命令显示不同的值gpsmoncgps确切地说,两者之间的差异在3'. cgps值是正确的,是gpsmon关闭3'的。

由于这不是一个小数字,我想找出这里可能出现的问题。

有人有想法吗?