首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何根据用户定义的坐标导航带有gps模块的RC汽车?

如何根据用户定义的坐标导航带有gps模块的RC汽车?
EN

Stack Overflow用户
提问于 2011-02-21 23:23:19
回答 3查看 3.5K关注 0票数 0

我一直在研究卡尔曼滤波算法。有没有另一种我可以使用的算法。

环境:机器人应该在室内导航。我必须使用GPS,因为这是必须的。GPS是机器人上唯一的导航传感器。

谢谢,Praveen

EN

回答 3

Stack Overflow用户

发布于 2011-02-21 23:31:11

请记住,GPS的精度是在2-3米内,我想这将是一个真正的问题的RC汽车,这一水平的不准确性将是显着的。

票数 0
EN

Stack Overflow用户

发布于 2011-02-22 13:32:22

便宜的接收器上的GPS在2米到10米的任何地方。由于卫星能见度的限制,室内的情况会比这更糟。

你可以用RTK达到亚英寸精度,但那是在10K美元的范围内。

要开车到一个路点,你需要知道你当前所在的位置,以确定从你到路点的方向。然后你需要知道你的车辆的方向,你可以根据你去过的地方的路径来接近它。然后,您需要能够驾驶车辆,使其指向路点。为了让你的车辆正确行驶,你可能需要监控转向角度是什么。

我已经用农业设备做到了这一点。高精度GPS接收器提供位置和速度。它的路径提供车辆的方向信息,然后车轮角度传感器在转向控制回路上提供反馈。

票数 0
EN

Stack Overflow用户

发布于 2011-02-25 00:28:54

您的GPS接收器应该输出NMEA,其中包含一个名为RMC的NMEA句子。这句话的字段5是以节为单位的地面速度,字段6是以度为单位的航向。字段1和2为您提供了当前位置坐标A=(lat1,lon1),您键入的目的地为B=(lat2,lon2)

现在,使用atan2计算出您想要位于的标题,如下所示:

代码语言:javascript
复制
heading = atan2( sin(lon2-lon1)*cos(lat2), cos(lat1)*sin(lat2) - sin(lat1)*cos(lat2)*cos(lon2-lon1))

然后将其从弧度转换为度,但您还需要向任何否定答案添加180度(因为方向的结果在-180到180之间)。

所以现在你有了你的实际标题hA,你应该在hB中的标题。从另一个(hA - hB)中减去一个,如果你的答案是肯定的,就开始右转,如果你的答案是否定的,就开始左转。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5067722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档