3D 空间中声音的多点定位

信息处理 算法 信号检测 冲动反应 线性代数 本土化
2022-02-06 00:04:02

TL:DR - 您如何找到发射器的 3D 坐标而不是发射脉冲信号?


故事:

我正在做一些事情来提高我的观鸟能力。我有一台相机,可以在我不在的时候给鸟儿拍照,但目前它必须一直缩小以确保它们在画面中。这不会拍出好照片,所以这就是我所做的:

将相机安装在电机上,使其可以旋转,放大到足以使图片质量更好,并尝试多点定位以使相机转动。


尝试的解决方案:

我的多点定位很简单。4 个麦克风收听声音。当从发射器(鸟)产生脉冲(例如啁啾)时,麦克风可以检测到脉冲,我的微控制器可以计算所有 4 个接收脉冲的麦克风之间的时间差。

然后,我的微控制器使用自制程序将这些时间差和麦克风相对于彼此的已知位置转换为矩阵形式。

一旦程序有了矩阵,它就可以求解每个麦克风到鸟的原点的距离,然后可以用来计算鸟相对于麦克风的坐标。


问题:

问题在于,它需要非常精确。我说的是理论数学空间中麦克风之间接收时间的约 10 纳秒差异会导致程序错误地计算出鸟的位置。

我混淆了代码,看看实现更多麦克风是否会减少对精度的需求,但我找不到一种方法来实现大于 ~±25ns 的容差。

通过我的设置,我只能计算 10 -5秒级别的接收时间差,因此我无法保证此类数学所需的精度水平。

谁能想到一种方法让我改进我的设置以使其正常工作?还有其他方法可以完成多点定位吗?当鸟鸣叫时,我怎么能找到它的位置?

谢谢大家,你们永远都很棒!!!


编辑:

我已经写出了我用来解决这个问题的数学过程。可以在此处找到图片、用于生成初始条件的 Excel 表和用于处理数学的 Matlab 代码。

0个回答
没有发现任何回复~