加速度计知道何时向上或向下直线移动吗?


8

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

将加速度计放置在对象上方是否可以完成此任务,或者它可以跟踪上下移动之间的过渡?

如果不是,哪种类型的传感器可以完成此任务?

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

理想情况下,我想要一个传感器,可以将其放在下面概述的框顶上,并计算其上升和下降的时间。它具有多个防止扭曲的导轨。我计划将arduino用作执行数学运算的微控制器,只需要一个能够感应上/下运动的传感器即可。欢迎所有建议。谢谢。

   +    +
   +    +
   +    +
------------
|   box    | 
| moves up |
| and down |
------------
   +    +
   +    +

3
加速度计将测量物体速度变化的时间。如果物体以稳定的速度运动,则加速度计将显示零输出。速度变化越快,在此期间加速度计将显示的测量值越大。
Michael Karas 2015年

因此,根据我的上述评论,加速度计可用于测量物体何时开始从静止位置移动或何时改变方向。设备本身只是一个传感器,没有任何“了解”。您必须连接其他电路或微控制器,这些电路或微控制器会记录加速度计的输出,并在对象更改位置时将更改计数为“知道”。
Michael Karas 2015年

3
我认为建议一种更好的方法将需要更多地了解该应用程序。有很多方法来测量运动和位置不可数号-效果最好的一个,完全取决于什么是移动的,怎么它是移动的,在那里它是(和什么是它周围),有什么权力来源是可用的或方便,如何解决方案必须准确无误,必须消除多少噪声,需要有多可靠。等等。如果您可以提供有关应用程序的更多详细信息,则可能会得到更好的答案。
J ...

1
出于好奇,是什么使盒子上下移动?(我的意思是,为什么您不能通过查看控件来间接检测运动?)
copper.hat 2015年

1
@MichaelKaras-对不起,您对加速度计的描述是错误的。在1 g重力场中保持静止的加速度计(如果敏感轴是垂直的)将报告其以〜9.8 m / sec ^ 2的速度垂直加速。实际上,这是广义相对论的第一个假设。
WhatRoughBeast 2015年

Answers:


8

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

它可以使您的呼吸像胸部的上升和下降一样平缓,呼吸,躺下,当然还有任何比这更快的动作。

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

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

如果您打算将加速度计用于任何用途,请先在智能手机上试用。

在您的应用商店中查找加速度计监控器应用,该产品会将传感器记录到文件中,并进行一些实验。如果它生成CSV文件,则可以在excel中打开它并绘制图形等。

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

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

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


7

一般来说,没有。想象一下,将球笔直向上扔(忽略风阻):一旦移动,唯一的作用力就是重力,它产生恒定的加速度。仅凭加速度无法知道球何时达到最高高度并开始向后退–直到到达地面为止,加速度在整个路径上都是相同的。

如果您知道物体在静止时开始,并测量其加速度,则可以通过对加速度进行时间积分来确定其速度。如果减慢速度,您将看到负加速度,并且积分将在停止时变为零。然后,当它再次开始移动时,您会看到加速度发生变化,并且可以重新开始进行集成。但是,这在很大程度上取决于测量和计算的准确性。如果其中任何一个稍微偏离,错误都会逐渐增加,直到您不再了解实际情况。


1
不仅仅是准确性-实际的IMU必须始终知道其旋转方向才能应用加速度测量。
克里斯·斯特拉顿

@ChrisStratton-我没有这么说,但是我假设是直线运动。在这种不切实际的局限情况下,您的评论仍然正确吗?
皮特·贝克尔

仅以9.8 m / s的速度观察到的加速度。
罗恩·佩希特尔

1
@LorenPechtel:还是有必要的,但不能解决集成问题。想象一下,一个盒子上升,减速到几乎停止,然后再次加速。现在想象第二个盒子放慢一点,所以它暂时掉下来,然后又升起来。差异可能很小,但递增/递减计数器必须有所不同。如果您的集成稍差,您将不会注意到差异。
MSalters

1
加速度计是否会为自由落体的物体测零?确实更多是G力测量,不是吗?
章鱼

5

首先,重要的是要了解加速度计在重力场中的行为,例如我们在地球上的经验。加速度计不能单独测量速度的变化,因此不能测量加速度。它可以测量速度和重力的变化-这意味着,如果您打算尝试轮廓,则需要对重力进行测量。

同样,重力将被测量为向上的加速度-这有点违反直觉,但是如果您将加速度计想象为是这样的话,这是有道理的:

原理图

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

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

因此-如果您具有垂直加速度计,并且消除了重力影响,并且设备的运动要比加速度计的本底噪声大得多,而且运动足够平滑以至于不会混淆您的算法-那么它可能有可能。上面有一个答案提到自由落体,这将是一个问题,但是我根据您的描述假设您的设备在任何时间段内都不会自由落体。不过这是一个猜测。

如果您确实确实想使用加速度计,则解决此类问题的最佳方法是以某种方式记录加速度计的输出(我更喜欢通过SPI输出并使用USB逻辑分析仪对其进行记录),并准确记录您的工作(或如果您真的很热衷,甚至可以录制视频)。然后,您可以脱机使用算法,而无需经常怀疑Arduino是否确实在按照您的想法去做。

正如其他人提到的,其他类型的传感器可能更合适。我们需要更多有关您为什么要尝试发表评论的确切信息。


2
这不仅是加速度计的怪癖-位于均匀重力场中的物体与均匀加速的物体是无法区分的。从某种意义上说,当地面上的物体正在加速时,加速度计是正确的。我们只是不认为这是因为我们以相同的速度在加速。
cpast

是的-我知道。加速度计尽可能地正确-但在重力场中静止不动的垂直加速度计会测量向上的加速度,这是与直觉相反的。
戴夫·布兰顿

我认为这是一个更好的解释:想象一个举重的人。比例尺显示了它施加给男人的力(除以g)。首先,它显示实际重量,但是当电梯开始向上移动时,它将显示较高的重量。甚至这个人都觉得自己很重。加速度计也只是测量它对小质量物体施加的力。
sweber

4

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


3

小心,加速的逆转并不意味着盒子会掉头。盒子启动-您看到向上的加速度。现在它正在稳步上升-您看不到加速。它减慢到一半的速度-您会看到向下的加速度。它以半速继续-您看不到加速度。它加快了速度-您会看到向上的加速度。它停止了,您看到向下加速。

您看到了,向下,向上,向下,但是盒子实际上只向上移动了。您将需要随着时间的推移进行积分,并且必须在加速度计中具有足够的精度,才能弄清楚您的实际运行方式-观察累积误差,这可能会使这个问题变得非常棘手!

您是否研究过使用激光测距仪测量盒子的位置?


确实,您需要随着时间的推移进行两次积分-一次获得速度,一次获得距离-这将累积很多误差。
abligh 2015年

2

加速度计正在测量加速度。如果加速度进行了运动,则加速度计在该轴上的灵敏度足够高,它将被检测到。加速度的方向将由读取值的符号指示。请注意,在垂直轴上测量加速度时,测量值将受到重力加速度常数的影响g


1
“如果以加速度执行运动”,则对象最初处于静止状态。不加速就不可能进入运动状态。
David Richerby

是的,但问题是必须在哪个阶段检测运动。
尤金(Eugene Sh)。

2

如果您不希望物理接触(例如由典型的限位开关或微动开关提供的接触),则可以安装磁体并使用干簧开关或霍尔效应开关。或安装略微伸出且不透明的物体,然后穿过光学检测器(其中有一个小插槽)。

加速度计比上述任何一种都要复杂,昂贵,并且出于皮特·贝克尔(Pete Becker)(现在也由戴夫·布兰顿(Dave Branton))雄辩地解释的原因,它不太可能起作用。


可能值得注意的是@TheDudeAbides描述的情况有点让人联想到计步器。
user3334690

@ user3334690我怀疑计步器的准确性有限,部分原因在于人类步伐的可预测性。如果我们可以安排将磁铁附着到每个地板表面,我怀疑我们可以使用霍尔效应开关使它们更精确:-)
abligh 2015年

1

这里有很多很棒的信息,但是我还没有看到有人建议使用线性电位器 ...

简单,施加电压并计算GPIO读取HI的次数。最便宜的线性锅?旧收音机的音量滑块,遥控玩具控制器的修剪调整等


您是否暗示物体,锅和固定底座之间的机械连接?那不会引入新的力量和阻力。
章鱼

1

如果其跟随导轨,那么如何使用超声波测距仪呢?arduino可以进行数学运算以确定加速度,并且比将电线连接到移动的物体上要容易得多。如果轨道是笔直的,这无疑将是最好的。这是一个。https://www.sparkfun.com/products/639


欢迎来到electronics.stackechange!希望您在这里有家的感觉!
WalyKu 2015年

0

我建议使用两个薄金属板来形成电容器。一块板将放置在盒子的顶部,另一块板固定在离盒子一定的高度。随着盒子上下移动,电容(C)会因板间距(d)(C = kA / d)的变化而变化。可以通过适当的方式将这种变化“转换”为电压,频率等的变化,然后转换为适合arduino接口的形式(可能需要放大)。


这是行不通的。1:尽管我们没有尺寸,但您可以玩一些数字,您会发现动态范围很大,而电容却很小。2:如果设置是由金属制成的,则您的每个板都会与设置一起形成一个电容器。也就是说,您有两个串联的盖子,它们之间的电缆长度不同。电容或多或少是恒定的。虽然有电容式传感器,但是它们的原理不同,可以测量的差异不超过1厘米。
sweber
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.