我可以使用什么来检测室外的精确位置(英寸)?


13

一段时间后,我又回到了EE,所以请原谅我的无知。我正在寻找一种方法来检测室外的精确位置,以便与儿子一起为项目导航机器人。
有没有一种低成本的三角测量或使用GPS的方法?我正在寻找精确到英寸的精度。另外,我不在乎是否需要将一些变送器放置在不同的位置以为设备提供参考。

这是用于机器人割草机。我有一个2英亩的院子,我的房子在中间,附近有几棵树作为障碍。

我的2英亩院子

我的三个男孩中有两个(14岁,11岁,5岁)提出了这个想法,因此该项目的真正目标是与他们在一起并激发他们对EE和CE的兴趣。

因此,成本是一个因素,但我不在乎我们是否会在接下来的两年中继续努力并花一点时间。

这是我目前的计划

  • 板载Windows PC,以便我可以对传感器进行编码。
  • 板载Microsoft Connect可帮助进行障碍检测(Windows PC的原因)
  • 包括用于一般位置的USB GPS
  • 包括相机只是为了好玩

在2年内,如果我有钱可以,但是我不想从疯狂的昂贵GPS开始。

感谢所有帮助我的人!!!!


1
我听说有人使用GPS控制机器人割草机,但我相信他们为此花费了数千美元。
Kellenjb 2012年

1
更多详细信息将帮助我们推荐实际的解决方案,而不是漫长讨论各种选择。诸如系统范围,可允许的功率,计算和复杂性成本以及财务成本之类的信息(作为与您儿子一起进行的项目,我想这比建立一个幻想所需的数千美元还少)商用载波相位差分GPS系统,但不确定多少),发射机和接收机的物理尺寸都将有所帮助。
凯文·维米尔

添加了更多详细信息。感谢您的所有输入,这对本项目非常有帮助!!
Jamey McElveen'3

1
使用基于音频的方法将不起作用。有太多的事情可以弄乱它。风(不是来自风的噪音,而是空气移动并改变声音的速度/方向),割草机本身的噪音和振动,房屋和围栏的反射等。请坚持使用基于RF或Light的系统。

1
抱歉,是一个拼写纳粹,但它是“ pique”,而不是“ peak”。
罗曼·斯塔科夫

Answers:


11

您应该考虑翻转系统。机器人本身无需确定位置。它只需要知道该怎么做。可以通过WiFi链接将其从固定PC传达给它。有了这样的链接,无论机器人确定位置还是在固定安装中完成,然后将结果传输到机器人,都没有关系。如果机器人失去了WiFi连接,它可能会停止。这样可以防止其超出范围,因此无法获得应转弯的信息,同时割掉了附近所有的花园。我认为最好使机器人尽可能简单,并将最大的负担放在固定的安装上,以便于监视,修复和使用它。

我实际上还没有这样做,但是在想着您的问题时,我想到了一些方法。机器人上有旋转的红外发射器。这可能每秒旋转一次。它射出了一个相当窄的调制红外垂直狭缝。然后,将固定的红外传感器放置在周围(主要是外围)周围。这些指示它们何时感测到来自机器人的光束,该光束仅在重复间隔的一小部分之内。通过比较来自各个传感器的信号的时序并知道它们的位置,您应该能够计算机器人的位置。任何两个传感器的时间偏移除以信标周期,就可以告诉您这两个传感器的相对角度(从机器人角度看)。有了足够的传感器和一堆数学运算(在任何现代PC上只需一秒钟即可轻松完成),您可以求解机器人的绝对位置。然后,PC通过WiFi链接通过TCP连接将适当的命令发送给机器人。

机器人实际上并不需要位置信息。所有“思考”都在固定PC上完成。机器人需要的只是一个带有WiFI模块和TCP / IP堆栈的小型嵌入式系统。您可以向机器人发送基本命令,例如相对方向,速度等。

来自任何两个传感器的数据会将机器人置于一个弧线上,其中还包括两个传感器。确切的弧度取决于两个传感器的角度偏移。理论上,您只需要三个弧,即三个传感器。我会再使用几个,以便各个传感器由于各种原因而暂时退出。这将过度约束问题,但是使用正确的算法,您可以利用所有这些数据并找到机器人最可能的位置。

如我所说,我还没有尝试过,但是我认为您应该能够获得足够好的精度来控制割草机。至少该方案不依赖任何特别昂贵,难以获得的东西,也不依赖于任何可以在自己的后院中合理测量的东西(例如,没有纳秒级计时)。


+1解决问题。这有助于使割草机本身尽可能简单-有助于使事情更容易设计。您的IR方案也很简单,只要院子中没有其他事物的反射,它就应该很有效。这属于“该死,我希望我想到了”类别!

4

先前的答案从割草机如何检测其位置的角度解决了该问题。然而,传感器可以在外部,即在房屋上。放置摄像机,以便他们可以在院子中的任何地方看到割草机。在割草机和某些参考点上贴上符号或标志或其他彩色物品(或使用红外反射器或LED,这样您就可以在相机上安装陷波滤镜,并且只允许进入,使跟踪代码变得微不足道)。由于摄像机是固定的,因此视频帧内参考点和割草机的位置应提供明确的定位数据。精度取决于相机分辨率。这样,您不必在车载电子设备上花费太多,并且图像处理代码可以“在家中”运行。


3

我可以想到几种方法,具体取决于您希望机器人在其中移动的范围(米还是几百米?)。

但是,GPS绝对​​不会通过容易获得的硬件为您提供精确的英寸级别。为了达到该精度,您将需要执行载波相位差分校正。尽管这不太棘手,但它并不像插入模块那样简单。您可以查看此项目以查看其实现。

一种更简单的方法可能是使用IR或超声波信标,并使用机器人上的传感器来确定它与各种信标之间的相对距离。伺服安装的接收器可以隔离与发送器的角度和相对信号强度。不幸的是,您不太可能以这种方式获得英寸级别的精度。


1
这种GPS技术被称为“差分GPS”,它需要一个人精确地知道固定参考点的位置。
2012年

请记住,OP仅需要准确的相对精度。割草机并不需要知道,如果它是在克利夫兰还是图森..
DefenestrationDay

2

另一个选择是使用网络摄像头和一些众所周知的形状/颜色,并运行简单的图像识别。使用三角测量(也许用步进电机旋转网络摄像头)找出您的位置。如果您在板上拥有相当大的CPU容量(例如BeagleBone或上网本),而不是像Arduino这样的小物件,则可以这样做。


我一直在想这个。这是一个大型的四轮机器人,我打算在其上安装便宜的Windows 7或Linux PC,以便我可以针对它编写一些软件。
Jamey McElveen'3

2

我会从所有其他答案中找到一条不同的路线。在周围的院子里埋一根电线。用一个可以输出100kHz(或类似信号)信号的小电路驱动它。使用移动平台很容易检测到。与那些用于将狗关在院子里的无栅栏系统所使用的技术完全相同。地狱,您可能会抓住其中一个单位用作传感器。

这将为您提供周边控制。如果您感觉到100kHz信号,那么您就处于边缘。当然,请首先在没有割草机的情况下进行测试(也许您的第一个设计应该是修改后的R / C车来做到这一点。我也放弃了Windows PC并抢购了Arduino系统。它们价格便宜,初期投资为几百美元和一辆遥控车,您就有了原型。

作为父母,我很确定您想使它尽可能安全。这意味着不要将一堆电子设备捆扎到值得信赖的两冲程机器上。看看您是否能找到80年代的Radio-Electronics杂志的旧版本。他们在那里设计了一种自动割草机,称为“草坪游侠”。当然,您不会重新设计它们的原始设计,但是它们具有几项新颖的创新,包括易于检测割草的传感器(避障,周边检测和导航),更重要的是,它们具有独特的设计。切割刀片比旋转一磅锐化,硬化的钢要安全得多。他们的切割系统实质上是一对带有x-acto刀片的摆动盘。圆盘会旋转,这意味着如果岩石(或脚!)阻碍了它的前进,从而减少灾难性的伤害。我强烈建议您查看该系列文章,并将一些原理应用于您的现代设计。您也许可以从公共图书馆获取它们;我知道我有他们。

祝你好运,这听起来像是一个伟大的项目,它将使年轻的孩子们保持兴趣和思考。


1
我不得不承认,我从未读过有关草坪巡游者的信息,但是我已经修理了割灌机上的摆动刀片,并且我认为您对它们的安全性的评论是错误的。如果旋转速度快到足以割草,它就会把脚割成碎片。摆动刀具的好处是,如果卡在树桩或岩石上,它不会损坏变速箱。这并不意味着双脚可以安全地抵御刀片的伤害。以类似的方式,考虑类似的字符串修剪器的情况。非常轻巧和灵活,但是仍然会严重困扰您!
凯文·维米尔

1
哦,相信我,我认为枢转盘不会保护您的脚!我说的是,固定的沉重刀片比旋转的圆盘具有更大的惯性,并且会造成更大的损坏,而旋转的圆盘不仅更轻,而且在碰到脚时具有一定的“柔韧性”。结合电动机的硬件过流保护功能,我认为您所拥有的东西比典型的割草机刀片安全得多,这就是我建议这样做的原因。这个项目涉及自动电子设备和尖锐物体...我认为安全性应该从一开始就成为设计的一部分。:-)
akohlsmith'3

2

我想知道是否可以将GPS和陀螺仪一起用于稳定的位置跟踪。如果两个人都知道如何并且具有稳定的位置误差信号(PES),则可以应用模糊逻辑学习方法。GPS用于大规模位置感测+/- 10m和陀螺仪或其他方式用于短距离位置跟踪+/- 0.1m

计划1)使用Zigbee收音机或机载数据收集系统为每个割草的孩子测量GPS路径跟踪数据。稍后在路径分析程序上分析稳定性,样式,速度和有效性,该程序会汇总距离,分析坡度抖动,重叠或有效轨道数X和Y。

2)选择最佳路径并记住。(曲奇屑),用于记录每个孩子使用的各种路径并评估记录的路径的路径性能和安全性。

3)通过使用正交矢量,倾斜矢量,圆形轨迹进行割草来测量各种路径的PES,并针对每种车辆引导方法确定有效的跟踪误差,并评论产生的割草的美学差异。

只需使用积累的记录位置信号进行分析,然后再尝试使用4通道伺服控制系统进行机器人跟踪。(气体,转向,制动器等。)

最大的一课是学习如何与孩子,客户和工程师进行沟通,这是最大的一课。在设计规范之前学习如何编写规范。哪些输入,过程和输出,环境输入以及具有接受和拒绝标准的可测试/可测量参数。每个里程碑和失败后果也应有适当的奖励。

这是项目计划,设计规范和DVT计划的缩略图。(设计验证测试)

您的成功取决于它。祝好运并玩得开心点。


1

尽管这只是一个起点,但我强烈建议您阅读这份PDF,该文件解释了John Swindle的音频本地化器背后的理论。我记得,它解释了不同的本地化方法,并解释了约翰的方法,精确到半英寸!(该设置非常简单,并且未提供代码,但可用于DPRG(达拉斯个人机器人小组)RoboColumbus事件的良好效果)。


尽管我一心一意使用音频(我设计音频产品为生),但在这里不起作用。院子里有刮风,割草机发出的噪音/振动是这种方法的不利环境。由于所涉及的距离,声音水平必须相当大且在人类听觉范围内。因此,即使它奏效,也会惹恼邻居和房主。

@DavidKessner-您不能使用超声波扬声器和麦克风来将您的声音系统与人的听力和环境噪声(据我所知,在超声区域的强度较低)隔离吗?超声波驱鸟器相当强大且便宜。当然,这对于宠物可能会很麻烦,并且会减少喂鸟器附近的出勤率,但是如果例如您的花园里有被鸟birds倒的花园,那可能是可取的。
凯文·维米尔

1
@KevinVermeer Ultrasonic(美国)是比在人类听力范围内运行事物更好的解决方案,它会使其他事物变得复杂。对于初学者,您不能使用PC声卡来产生the声或将麦克风信号数字化。而且,要使美国的发射器能够在所需的距离(根据我的估计超过200英尺)内工作,将是困难的。即使这样,割草机本身也会产生噪音和振动。您提到的PDF表示机器人在本地化过程中必须保持静止,我怀疑割草机的刀片也必须处于关闭/固定状态。

1

/electronics//a/23506/5439

请参阅我对LPS另一个问题的回答。简短的回答是,这是一个非常棘手的问题,现有系统非常昂贵(起价数千美元)。使用超声波传感器的建议是一个很好的建议,如果您使用Google可以找到关于使用超声波甚至可听声音的现有技术。


1

目前udacity正在提供免费的在线编程机器人汽车课程,该课程可教您Google如何为他们的无人驾驶汽车做到这一点。基本上,他们使用GPS进行总体定位,并使用存储的地图和视觉传感来进行高精度定位。该软件使用粒子过滤器。

如果您使用测量师使用的非常昂贵的差分GPS设备,则可以单独使用GPS来完成此操作,但这几乎不具有成本效益。如您所建议,如果您使用几个低成本(也许是Xbee?)收发器,则可以通过发送脉冲并测量从机器人上的发送器到机器人的时间来轻松地以极高的精度测量距离。远程中继器和返回。就像RADAR一样,只是它不是由无源表面反射信号,而是由固定的应答器发送回去。

编辑:自从我被凯文(Kevin)召集到这本书以来,也许我可以更好地解释;-)(非常有趣,我对凯文(Kevin)表示最高的敬意,他是正确的,因为我没有提供足够的细节来展示如何实施)。

要准确测量两点之间的传播延迟,主要需要做两件事:1)一条直线信号路径,因为反射会产生失真。2)两端的某些电子设备使用同步时钟,并且能够以所需的精度测量时间间隔。

同步时钟相对容易,因为接收站可以从其他站发送的信号中获取时钟。这是具有时钟恢复功能的标准同步数据传输。

这是一篇论文,介绍了在1.25 Gbps双向数据链路上的传输延迟的测量方法,该方法可以很容易地在10 km长的光纤上获得这种精度。他们指出:“它应该能够在长达10 km的长度上以亚纳秒的精度同步〜1000个节点。”

在本说明中,描述了一种确定两个节点之间的时间偏移的方法。这些节点通过8B / 10B编码的1.25 Gbps双向串行点对点通信通道连接,例如1000BASE-X(千兆位以太网)所使用的通道。通过使用标记信号测量传播延迟来确定时间偏移。使用(Virtex-5)FPGA中的串行器/解串器(SerDes)功能将信号从主节点发送到从节点,然后再返回。从节点上恢复的时钟用作从节点的发送时钟,因此整个系统是同步的。对于1.25 Gbps串行通信通道,已知的延迟具有单个单位间隔(即800 ps)的分辨率。通过测量主节点的发送和接收时钟之间的相位关系,可以进一步提高此分辨率。已经证明该技术可以在用于两个波长的单个10 km光纤上工作,以促进主节点和从节点之间的双向点对点连接。

建立了第一个测试设置,以验证使用工作于3.125 Gbps的编码串行通信信道来测量发射机与接收机之间的传播延迟的原理。发送器和接收器驻留在两个独立开发板上的FPGA中。第一个测试设置表明,以一个单位间隔(即3.125 Gbps时为320 ps)的分辨率测量100 km光纤上的传输延迟是可行的。

使用的设备:

测试设置包括两个ML507 Xilinx开发板[7]。每个板上都安装了Virtex-5 FPGA。一个ML507开发板被指定为主节点,另一个被指定为从节点。主设备和从设备通过小型可插拔(SFP)收发器和10 km的光纤连接,从而建立双向链接。使用在双波长下工作的单根光纤。

测试设置

现在很明显,对于大多数爱好机器人项目而言,这种特殊设置是过大的,但是由于它使用了现成的开发板,并且不需要特殊的技能就能开始工作,因此可以很容易地在家复制。在机器人的情况下,链接将是无线电而不是光缆。也许它甚至可能是类似于电视遥控器的IR链接,尽管我怀疑外面的阳光直射可能会造成问题。在晚上,它可能会很棒!


2
您可以通过传输脉冲并测量从机器人上的发射器到远程中继器再返回所需的时间,轻松地以极高的精度测量距离 -在空中传输脉冲需要几纳秒的时间比发送和回波脉冲所需的处理延迟快约5个数量级。我认为这行不通。
凯文·维米尔

1
凯文是对的。试想一下“优雅漏斗纳秒”(youtube.com/watch?v=JEpsKnWZrJ8)。英寸精度意味着测量数十个皮秒。我看不出来。另一方面,使用超声波是可能的。
drxzcl 2012年

1

就像其他人所说的那样,本地化是一个难题,以合理的成本获得一英寸的分辨率非常困难。您可能会想知道,有一场涉及机器人割草机的大学比赛:ION机器人割草机比赛。我是为ION做准备的团队的一员。最终,我们没有竞争,但是我们确实花了很多时间思考这个问题,这肯定比看起来难得多。请注意,大多数竞争对手在上一次ION竞赛中,分配的时间不到该领域的50%,而平台要花费数万美元!但是,您有一个优势,因为ION不允许使用外部导航辅助设备(例如信标),这使问题更容易解决。(而且您没有时间限制。)浏览团队的项目报告将是一个很好的想法来源。

如果我要像您一样进行机器人割草机项目,则可能会使用廉价的GPS(用于粗略定位),IR /超声波/多色信标(精细定位),编码器(位置估计)和计算机视觉的组合(多种)。我不建议在豪华的GPS和IMU系统上花费数千美元。Kinect是个好主意,而且肯定比Lidar便宜很多;在深度图和相机之间肯定会有很多东西需要咀嚼。

我还推荐有关自动驾驶汽车编程的Udacity课程,以介绍其中涉及的概念。


1

既然您已经修改了问题以消除对1英寸分辨率的要求,并且告诉我们您将拥有Windows PC和板载Microsoft Connect,那么我认为仅使用机器人上的硬件就可以很好地定位。

您是否看到过一些人们用来寻找距发球杆距离的廉价高尔夫瞄准镜? 在此处输入图片说明

他们的工作方式是测量果岭上标志的感知高度(这是固定高度)并显示距发球区的距离。这是一个简单的直角三角形,如果您知道远端的角度和高度,则可以计算底边的长度。这正是您的儿子将要在几何学以及后来在三角学中学习的东西。

由于您的房屋似乎在整个区域中都是可见的,因此可能很容易看到2个角并计算距离?


1

使用割草机本身的声能。这是它自己的声音。或者,它的噪音可以用来掩盖加到割草机上的音频chi声,可能与曲轴或刀片同步。将麦克风放在割草机上以及院子周围的几个位置。根据响度粗略估计位置。最近的麦克风不会有太多的多径问题。然后将来自最近麦克风的音频进行互相关,以估计飞行时间的声音延迟。平均值或卡尔曼滤波器可消除延迟估计中的噪声,并进行触发。如果您可以对割草机隐藏(对人类)并(通过互相关)检测割草机上的chi声或发动机振动,则可能可以获得数英寸的精度。


1

查看http://porcupineelectronics.com/uploads/LR3_Data_Sheet.pdf 这款小型LR3适配器(已淘汰,但即将推出)会允许您将PC或SBC连接到Fluke 411D测距仪,据我所知,精度可达+/- 3 mm至30M。新推出的装置(LR4)可与新型Fluke电表一起使用。结合在云台上的摄像机,您可以将其指向已知目标,并在云台伺服器上使用高分辨率编码器进行高精度角度测量,您应该能够将机器人相对于院子地图的位置与您需要的准确性。您将需要代码中的一些三角函数(高于我的高中数学)。我在互联网上找到了必要的等式(维基百科)。我会将其包括在此处,但是远离存储信息的我的家用计算机。该系统还可以促进生成地图。您可能需要具有被动隔振功能的陀螺稳定平台(割草机会产生很大的振动)。为了进行实时测量,您可能还需要跟踪软件以使激光束也保持在目标上。如果您的计算能力适中,那么准确的里程表将为您提供两次“修复”之间的时间。


这是割草机,而不是航天飞机。
Olin Lathrop
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.