我刚刚开始设计一些嵌入式设备,并正在寻找资源。

我想要做的是将 GPS 接收器连接到轻型 SBC 或 mini-ITX、基于 x86 的计算机,并跟踪远程控制车辆的位置/进度。

理想情况下,这可能会演变成建造一些业余爱好的半自动车辆。

但我需要先入手的是一块用于GPS编程的开发板。

您使用过哪些板/包,我在哪里可以找到它们的[最好是开源]开发?

有帮助吗?

解决方案

开放嵌入式 是一个开始的好地方。很多嵌入式产品都使用ARM等处理器,因此交叉编译是一件大事。 构建根 是为小型系统构建自定义 Linux 内核的另一个资源。

您还可以找到许多拥有单板计算机 (SBC) 的制造商,它们拥有满足您需求的工具 - 在 google 中搜索“SBC Linux”,您应该会找到一个金矿。

Linux设备 密切关注 Linux 嵌入式社区,您应该在那里找到几篇好文章,引导您找到可以帮助您的产品或软件。

Debian 有一个嵌入式构建,但我还没有探索过。

有几本书是关于 嵌入式Linux 如果您想走那条路,可以使用。

GPS 接收器只需连接到串行或 USB 端口,并提供 NMEA 数据流,您可以使用 GPSD 解析该数据流,并且多个程序可以通过 GPSD 访问它。这是一种非常简单的基于文本的格式。

我使用过常规 PC 主板和用于嵌入式系统(带 GPS、蜂窝网络等)的 Atmel AT91 处理器。现在有很多信息,而且获取起来并不昂贵。如果我要开始一个新项目,我会考虑 Atmel 的 AVR32 处理器 - 它们非常适合爱好者,并且为 AVR32 架构上的 Linux 提供了大量社区支持。如果您想走无操作系统路线并在处理器上运行单个程序,他们提供免费的 GCC 编译器和重要的框架和示例。

祝你好运!

-亚当

其他提示

“NMEA”是查找此内容时要搜索的关键字。虽然我已经很长一段时间没有对此做过任何事情了,但这里是一些板和其他硬件的良好来源:

http://www.sparkfun.com/commerce/categories.php?c=4

我们很幸运地使用了 Holux GPS 接收器(专为三星 q1 设计)。通过串行端口进行极其简单的连接,您就可以读取 NMEA 字符串。

您的目标操作系统是什么?如果是 Linux,则有很多可用的 GPS 库(这是一个很好的清单). 全球定位系统全球定位系统驱动器 是我见过的最受欢迎的两个。

我还没有看到任何专门用于轻型/嵌入式用途的 GPS 设备,但许多消费类 GPS 设备都具有可能可以工作的 USB 连接(注意低端设备,它们通常没有计算机接口)。

我建议从一个普通的旧 c 项目开始,该项目从串行端口读取和解析 NMEA。您可以在 Windows 或 Linux 中执行此操作。

我通常将这样的项目分解为一组较小的项目,例如:

  1. 从串行端口阅读和解析NMEA
  2. 建立从远程设备到跟踪系统服务器的串行 /网络链接
  3. 集成组件

维基百科有一篇关于 国家海洋环境局 协议。正如亚当指出的那样,这实际上非常简单。

《Circuit Cellar》杂志也经常有这样的项目。
根据您想要做什么,需要考虑不同大小的目标。对于小型低功耗(电池)设备,请使用 Atmel AVR。如果我只是想粗略地了解这个概念并且需要 WiFi(或蜂窝网络)来连接互联网,也许可以在旧笔记本电脑上使用 Linux。

然后可以对笔记本电脑 Linux 原型进行精简并移植到嵌入式 Cinux 系统,以实现以后更低的电池使用量和便携性。(不过不像Atmel那么低)。

如果您熟悉 Linux 编程,我会推荐 Gumstix 系列小型计算机 - http://www.gumstix.com/

您可以将 vedex 主板与 GPSstix 扩展板配对,制作一个具有良好支持的编程环境的微型 GPS 接收器。

我建议 GPS通天塔 与您的 GPS 接收器通信。

GPS通天塔

  • 处理航点、轨迹和路线,
  • 知道很多格式(这解释了 Babel 的名字),
  • 运行在 Windows、Linux、OSX、
  • 自由的。

这里有些人推荐了像gumstix这样的设备——嵌入式设备,不带GPS的售价为149美元。我不太明白这一点。现成的 TomTom 配备了在 ARM 上运行 Linux、内置 GPS、大量闪存、电池和屏幕。大规模生产带来的价格优势是无可比拟的。对于您的爱好项目,不需要包含地图,但谁在乎呢?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top