加速度计是否知道它们何时直线向上或直线向下移动?

电器工程 传感器 加速度计
2022-01-15 19:01:03

我需要一个只能放在物体顶部的传感器,以计算物体上下移动的次数。

将加速度计放在物体顶部会实现这一点,还是可以跟踪上下移动之间的过渡?

如果不是,什么类型的传感器可以实现这一点?

- - - - - - - - 编辑: - - - - - - - - - - - - -

理想情况下,我想要一个可以设置在下面概述的盒子顶部的传感器,并计算它上下移动的次数。它有多个导轨,可防止其扭曲。我计划使用 arduino 作为进行数学运算的微控制器,只需要一个能够感应上/下运动的传感器。欢迎所有建议。谢谢。

   +    +
   +    +
   +    +
------------
|   box    | 
| moves up |
| and down |
------------
   +    +
   +    +
4个回答

我认为加速度计和 arduino 是计算盒子上下移动次数的好方法。这是一种紧凑、可靠、非接触式的运动检测方式。

它可以用于像胸部起伏一样轻柔的运动,呼吸时,躺下时,当然还有比这更快的运动。

您可能会使用带有一些滞后的简单阈值检测器 - 当加速度超过 +x 时计数一个,然后将阈值设置为 -x,直到它越过 -x,然后将阈值设置为 +x。

如果加速度更温和,或者存在您不想计算的背景振动(即使它实际上是上下运动),那么信号可能会丢失在噪声中。
然后你必须在 arduino 上实现一个简单的数字滤波器,它实际上以特定的速率“搜索”运动。这可能很简单,只需将最后 100 个加速度样本(100 Hz)相加,然后将平均值通过阈值检测器,或者您可以设计一个更精细的滤波器。

如果您打算将加速度计用于任何事情,请先用您的智能手机尝试一下。

在您的应用商店中查找加速度计监视器应用程序,该应用程序将传感器记录到文件中,并进行一些实验。如果它是 CSV 文件,您可以在 excel 中打开它并绘制图表等。

您手机中的加速度计非常基本且嘈杂,但可以很好地替代任何其他低于 100 美元的加速度计,并且可能会让您大致了解 1000 美元的加速度计可以做什么。

是我对手机传感器所做的一个示例。

祝你好运!如果适合您,请在此处发布您的结果(回答您自己的问题)。

一般来说,没有。想象一下把一个球直接向上扔(忽略风阻):一旦它移动,它所受的唯一力就是重力,它会产生恒定的加速度。仅从加速度无法知道球何时达到最高高度并开始回落 - 加速度在其整个路径中是相同的,直到它撞到地面。

如果您知道物体从静止状态开始并测量它的加速度,您可以通过对加速度随时间积分来计算它的速度。如果它减速,您会看到负加速度,并且当它停止时积分将变为零。然后当它再次开始移动时,您会看到加速度发生变化,您可以重新开始整合。然而,这在很大程度上取决于测量和计算的准确性。如果其中任何一个稍微偏离了一点,错误将逐渐增加,直到您不再知道真正发生了什么。

首先,重要的是要了解加速度计在重力场中的行为,就像我们在地球上所经历的那样。加速度计不测量加速度,因为它不单独测量速度的变化。它测量速度和重力的变化——这意味着如果你打算尝试你的轮廓,你需要测量重力。

此外,重力将被测量为向上的加速度——这有点违反直觉,但如果你想象一个加速度计是这样建造的,那么它是有道理的:

示意图

模拟此电路- 使用CircuitLab创建的原理图

我滥用原理图编辑器来展示一个由两个完全阻尼的弹簧悬挂在管中的滚珠轴承。想象一下,加速度计通过告诉您滚珠轴承当前离静止位置多远来进行测量。现在想象一下把这个装置转过来,你可以看到滚珠轴承在重力作用下是如何下垂的,这与加速度是如何区分的。我认为相对论在这个话题上有话要说,但无论如何。

所以 - 如果你有一个垂直加速度计,并且你消除了重力的影响,并且你的设备的运动比你的加速度计的本底噪声足够大,而且运动足够平滑,不会混淆你的算法 - 那么它可能成为可能。上面有一个答案提到了自由落体,这将是一个问题,但我从你的描述中假设你的设备在任何时间都不会自由落体。这是一个猜测。

如果您确实想使用加速度计,那么解决此类问题的最佳方法是以某种方式记录加速度计的输出(我更喜欢通过 SPI 输出并使用 USB 逻辑分析器记录它)并准确记下您所做的(或甚至录像,如果你真的很热衷)。然后,您可以离线使用算法,而无需不断怀疑您的 Arduino 是否真的在做您认为的那样。

正如其他人所提到的,其他类型的传感器可能更合适。我们需要更多关于你为什么要尝试我想评论的内容的详细信息。

如果物体在固定导轨上上下移动,我认为计算其运动的最简单方法是使用限位开关,当物体静止时关闭,离开静止位置时打开。