用于 Raspberry Pi 的 GPS:将 GPS 与 Raspberry PI 连接
关于 Raspberry Pi 的 GPS,您是 GPS 应用程序的粉丝,正在寻找将 GPS 模块与 Raspberry Pi 相结合的项目吗?那么,您正在阅读正确的文章。
事实上,您可以将您的 Pi 转换为具有简单连接和接口的 GPS 接收器。虽然它无法承受更昂贵的 GPS 接收器,但它可以让您访问 GPS 数据。
这怎么可能?本文将指导您了解您需要什么以及如何连接 GPS 模块和 Raspberry Pi。
如何将我的 GPS 连接到我的 Raspberry Pi?
树莓派
在您无法访问 Wi-Fi 或蜂窝连接的情况下,GPS 可以成为您的首选。如果你经常在户外使用你的树莓派,你可以在没有手机或其他昂贵的 GPS 接收器的情况下访问 GPS。
在我们开始之前,您需要一些组件,包括:
- GPS 模块
- 树莓派
- 跳线
- 移动电源(使其可移动)
以下是将 GPS 模块连接到您的 Raspberry Pi 的方法。
第 1 步:将 GPS 模块连接到树莓派
要将 GPS 模块连接到 Rasberry Pi,您可以使用简单的串行连接,利用 Raspberry Pi 的 RX 和 TX 引脚。
然后,将模块的 TX 输出连接到 Pi 的 RX 输入,并将 RX 输入连接到 TX 输出。然后,将模块的 VCC 和 GND 引脚合并到 Pi 的 3.3v (pin1) 和 Ground (pin 6)。
这是使事情变得更容易的引脚图:
注意:确保您只为您的设备使用正确的电压以防止损坏。
第 2 步:配置 Raspbian 以进行 GPS 通信
建立连接后,就可以配置 Pi 的操作系统以启用 GPS 通信了。
您可能会遇到以前安装的 Raspbian OS 的一些配置问题。但是,您可以通过使用全新安装的操作系统来避免这些问题。
您可以通过运行以下命令来启动配置:
命令后应弹出以下屏幕:
树莓派软件配置工具
然后向下导航到“接口选项”并选择“P6 Serial”。接下来,确保在出现提示时停用串行登录 shell 并保持串行端口启用。
回到配置工具的主菜单,选择完成,然后重启你的树莓派。
第 3 步:下载必要的软件
该项目需要的一个必要软件是“gpsd”。有趣的是,您可以使用以下命令安装 gpsd:
但是什么是gpsd?简而言之,它是一个与串行 GPS 模块配合使用并允许各种通信标准的接口守护进程。您可以使用它来获取测试读数并验证一切是否正常。
安装后,使用以下命令检查您的 Pi 是否从模块接收 GPS 数据:
上述命令通过串口输出 GPS 模块的数据。在您的第一次测试中,您的输出应该类似于:
如果输出看起来像垃圾,请不要担心。重要的是您的 Raspberry Pi 可以接收数据。但是,如果您遇到“未收到数据”或“端口立即关闭”等问题,请检查您的连接。
此外,如果您无法在没有超级用户优势的情况下运行此命令,请使用以下命令将 pi-user 包含在拨出组中:
第 4 步:获取位置数据
完成所有测试和连接后,您现在可以获得 Raspberry Pi 的确切位置。但首先,您需要停止 gpsd 服务在后台自动运行。不是因为我们这个项目不需要它,而是因为它的默认设置不兼容。
运行以下命令将其停用:
虽然使用此命令会停止服务,但它不会阻止它在您启动系统时启动。因此,您可以使用以下命令禁用它:
之后,为您的 gpsd 创建一个新实例。新实例将使用以下命令将正确的串行端口数据重定向到套接字:
接下来,您可以使用以下任意命令显示 GPS 数据:
运行命令后,您的第一个结果应该看起来不完整。但别担心。收集足够的数据以获取您的确切位置大约需要 30 分钟。
但是,它只发生在您第一次启动时,尤其是在室内时。您可以尝试通过窗户将其指向室外来加快速度。
此外,如果运行 cgps 时输出为零或运行 gpsmon 时出现错误,请不要惊慌。相反,您可以运行此命令来解决问题:
运行命令后,您应该可以顺利使用 gpsmon 和 cgps。
与 Python 和 C 交互
将 GPS 模块合并到 Python/C 和 Raspberry Pi 是非常可行的。另外,您可以使用编程语言获取 GPS 数据。
使用 Python,您可以从 GPS 模块获得的 NMEA GPGGA 字符串中收集时间、纬度和经度信息。事实上,您还可以在终端上打印它们并使用 GPS 信息在 Google 地图上获取您的确切位置。
这是此项目所需的 Python 程序。
获得输出信息后,您可以通过调用地图的 URL 链接在 Google 地图上获取您的位置。
然后您可以使用此链接:http://maps.google.com/?q=
谷歌地图
C(WiringPi)
我们可以在输出窗口中提取和打印 NMEA GPGGA 字符串,并使用 C 编写的 WiringPi 库读取它。
您可以在此处获取此项目的 C 程序。该程序的输出不同,您可以使用它在 Google 地图上获取您的位置。
如果您使用的是树莓派 3 及以上版本,您可以在程序中使用 UART 串口进行连接:/dev/ttyS0 .
但是,如果您使用的是 Raspberry Pi 2 及以下版本,我们建议您使用 /dev/ttyAMA0 而是。
树莓派 GPS 帽子
GPS 帽子
Pi GPS HAT 允许您向 Raspberry Pi 添加精确的时间和位置。 GPS HAT 的一些功能包括:
- 它采用内置贴片天线,可在户外提供出色的性能。
- 它还具有一个 +u.FL 连接器,允许连接外部有源天线。
- GPS HAT 仅使用 20mA 电流消耗。
- 它具有内置实时时钟 (RTC)。
- 它还带有 LED 指示灯,当 GPS 获取您的确切位置时会闪烁。
树莓派 GPS 导航机器人
构建机器人
GPS 导航机器人是您可以使用 Raspberry Pi GPS 组合制作的众多有趣项目之一。最好的部分是您可以设置GPS航点并用手机控制这个机器人。
有趣的是,当您设置航路点时,机器人会确定到达所需位置的最佳路线。它还可以在到达目的地时提醒您。而且这一切都基于 Raspberry Pi GPS。
即将结束
将 GPS 连接到 Raspberry Pi 开辟了不同的项目可能性。例如,正如我们之前提到的,您还可以构建导航机器人、气象站、无人机跟踪器或汽车跟踪系统。
GPS 模块
GPS 模块也很便宜并且相对容易设置。毫无疑问,它们可能会花费大量时间来提取足够的数据,并且可能会因接收不佳而让您感到沮丧。但是,它们在户外工作异常出色。
那么,您想将 GPS 模块与 Raspberry Pi 连接起来吗?你还有更多问题要问吗?请务必与我们联系。
工业技术