我已经在互联网上搜索了这个问题,但找不到任何答案。这是该项目的要点以及我到目前为止所做的事情
项目:我校参加探空火箭比赛。我负责有效载荷,我们的部分有效载荷包括 GPS。我们的火箭飞行了 2 英里并且没有突破音障
GPS模块:Adafruit ultime GPS breakout
Raspberry Pi 型号:B+ 或 2(我们都可以访问)
问题:由于火箭飞行速度非常快(大约 700-800 英尺/秒),我们需要 GPS 以比每秒一次(默认速率)更快的速度更新。我有 2 个都使用 GPSD 守护进程的树莓派和一个个人 python 脚本。问题出在:使用 debian Wheezy,我可以使用以下命令从 bash 设置更新速率
"echo -e "\$PMTK251,57600*2C\r\n" > /dev/ttyUSB0" - 更新波特率
"echo -e "\$PMTK220,200*2C\r\n" > /dev/ttyUSB0" - 更新 NMEA 语句
“stty -F /dev/ttyUSB0 57600 clocal cread cs8 -cstopb -parenb” - 更新树莓派的波特率
在 debian Wheezy 上,这些命令有效,我以每秒 5 次的速度获取 GPS 坐标。- 没问题。
另一个 pi 使用 Debian Jessie,当我运行确切的命令时它们不起作用,并且 GPS 单元继续以每秒一次的默认速率更新。
我很困惑为什么它会在 Wheezy 上起作用,但在 Jessie 上却拒绝合作。
一些附加信息: - 我们通过 USB0 进行通信,(不是 AMA0) - Jessie 本身不支持 GPS 功能,必须手动更改收听 GPS 芯片的方式(wheezy 本身支持此功能,无需更改), - 我们正在使用完整的杰西(不是精简版)。- 当我更改 Pi Jessie 的波特率时,我跟进查看它的设置(使用:stty -F /dev/ttyUSB0 -a)它告诉我波特率是我给它的新值(即/ 57600)。
所以我认为问题在于设置实际的 GPS 单位波特率/NMEA 量刑
我想我已经包含了所有相关信息,但如果我遗漏了一些内容,我很抱歉,并且可以澄清任何不够清楚的内容。
任何帮助将不胜感激,因为我们想升级到 Jessie(我们在探空火箭上集成的其他芯片和程序与 Jessie 一起运行更顺畅)但 GPS 是不升级的主要原因。