2011-05-08 21 views
7

我在查找或实现算法以找到信号源时遇到了一些麻烦。我的工作目标是找到发声器的位置。使用到达时间差的信号的三角测量

为了达到这个目的,我使用了三个微型装置。我正在使用的技术是多点定位即基于到达时间差

到达时间差之间的每个微多是找到使用交叉相关的接收信号。

我已经实现的算法找出到达的时间差,但我的问题是更多关于如何多边的作品,它的基础上我参考目前尚不清楚对我来说,我无法找到任何其他很好的参考这是免费/开放的。

如果你对我如何可以实现多边算法,或者,我可以使用基于到达时间差,这将是一个很大的帮助其他一些三边测量算法一些参考。

在此先感谢。

+1

Triangulation?你的意思是三角? – 2011-05-08 18:22:47

+0

是的,感谢您的纠正,我编辑了它。 – JeanK 2011-05-08 18:28:12

+0

我认为这篇文章[用于使用分析几何的二维平面中的发射机/接收机站的本地化的新颖的三角测量算法](https://www.researchgate.net/publication/265336167_A_Novel_Trilateration_Algorithm_for_Localization_of_a_TransmitterReceiver_Station_in_a_2D_Plane_Using_Analytical_Geometry)将对您有所帮助。它将三边测量和多边测量这两个概念完美地结合在一起。 – 2017-02-18 19:11:23

回答

2

您正在寻找的点是三个双曲线的交点。因为你只使用3个感受器,所以我在这里假设2D。从技术上讲,你可以找到一个独特的3D解决方案,但因为你可能有噪音,我假设如果你想要一个3D结果,你会采取4个麦克风(或更多)。

wikipedia page为您做了一些计算。他们用3D来做,你只需要设置z = 0并求解方程组(7)。

该系统超定,所以你会想要在最小二乘意义上解决它(这实际上是使用3个感受器的关键)。

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在数值解当前点和xi的坐标,yizidi是第i个参考点的坐标和距离。为了解决这个问题 - 我的建议是不使用牛顿/高斯或牛顿方法。你需要上述函数的一阶导数和二阶导数 - 而且这些函数在空间的某些点有一个有限的中断 - 因此这不是一个平滑的函数,这些方法将不起作用。有效的功能优化算法是直接搜索算法(寻找最小值和最大值,在我们的例子中 - 您需要最小的误差/成本函数)。

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