使用到达时间差的三边测量信号

8
我在寻找或实现一种算法来找到信号源,但遇到了一些麻烦。我的工作目标是找到声音发射器的位置。为了完成这个目标,我使用了三个麦克风。我采用的技术是基于到达时间差的多边定位技术。每个麦克风之间的到达时间差是通过接收信号的交叉相关计算得出的。我已经实现了找到到达时间差的算法,但我的问题更多地集中在多边定位技术上,基于我的参考资料,我对此并不清楚,并且我找不到其他好的免费/开放的参考资料。如果您有关于如何实现多边定位算法或其他基于到达时间差的三边定位算法的参考资料,那将是一个很大的帮助。谢谢。

我认为这篇论文A Novel Trilateration Algorithm for Localization of a Transmitter/Receiver Station in a 2D Plane Using Analytical Geometry会对你有所帮助。它将三边定位和多边定位的两个概念融合成了一个。 - Joseph Thomas
2个回答

3
你要找的点是三条双曲线的交点。我假设这里是二维的,因为你只使用了三个接收器。从技术上讲,你可以找到一个独特的三维解决方案,但由于可能存在噪声,所以我认为如果你想要一个三维结果,你应该使用4个或更多的麦克风。 维基百科页面为你进行了一些计算。他们在三维中进行,你只需要将z = 0并解决方程组(7)。
该系统是超定的,所以你需要以最小二乘的方式解决它(这实际上就是使用3个接收器的原因)。

有没有办法可以展示如何在三维中完成这个?非常感谢! - Erik Andershed

2

我可以帮助您了解多普勒定位技术。

基本上,如果您想在3D空间中解决问题,则必须至少有4个点和4个距离(其中2个给出圆,因为这是2个球体之间的交点,3个点给出2个可能的解决方案(3个球之间的交点),因此,为了有一个解决方案,您需要4个球)。因此,当您拥有一些点(4个以上)和它们之间的距离(有一种简单的方法可以将TDOA转换为仅具有长度类型距离/而非时间/的方程组),您需要一种解决方程组的方法。首先,您需要一个成本函数(或称为解决方案误差函数),该函数可能如下所示:

err(x,y,z) = sum(i=1..n){sqrt[(x-xi)^2 + (y-yi)^2 + (z-zi)^2] - di} 

在数值解中,xyz是当前点的坐标,而xiyizidi是第i个参考点的坐标和距离。为了解决这个问题,我的建议是不要使用牛顿/高斯或牛顿方法。你需要先求出上述函数的一阶和二阶导数——这些导数在空间中的某些点处具有有限的不连续性,因此这不是一个光滑的函数,这些方法将无法工作。能够起作用的是直接搜索算法族,用于优化函数(寻找最小值和最大值,在我们的情况下,你需要最小化误差/成本函数)。

这应该对任何想要找到类似问题的解决方案的人有所帮助。


你能帮我解决一个类似的问题吗:https://stackoverflow.com/questions/52192584/clear-simple-example-of-how-to-calculate-tdoa-time-difference-of-arrival - Erik Andershed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接