过滤振动引起的噪音所需的算法

发布于 2024-09-24 23:44:28 字数 457 浏览 7 评论 0原文

例如,您测量来自某些设备的数据,它可以是在桥上移动的物体的质量。因为它正在移动,质量将提供数据,这些数据将根据物体的质量以一定的幅度振动。质量越大,振动越大。 有没有什么方法可以从数据中过滤掉这种噪音? 可能正在使用一些振动公式?不知道这里可以使用什么样的公式或算法(过滤器)。请提出任何建议。 编辑2: 更好的图,我只是为了更好地理解而画出来的: alt text

图片不太好。从该图中您可以看到每次的频率都是相同的 时间,但振幅会周期性变化。当移动的道路上没有物体时,我就会遇到类似的情况。 (传送带)。振动接近零值。 当物体移动时,会出现相同的波,但幅度会发生变化。 该图可以看出可能有一些力施加到系统上并产生强迫振荡。所以我对消除这种噪音很感兴趣。我不知道是什么力量导致了这种变化。很快我希望能得到一些关于有物体和没有物体的非移动道路的数据,以便与移动道路的情况进行比较。

For example you measure the data coming from some device, it can be a mass of the object moving on the bridge. Because it is moving the mass will give data which will vibrate in some amplitude depending on the mass of the object. Bigger the mass - bigger the vibrations.
Are there any methods for filtering such kind of noise from that data?
May be using some formulas of vibrations? Have no idea what kind of formulas or algorithms (filters) can be used here. Please suggest anything.
EDIT 2:
Better picture, I just draw it for better understanding:
alt text

Not very good picture. From that graph you can see that the frequency is the same every
time, but the amplitude chanbges periodically. Something like that I have when there are no objects on the moving road. (conveyer belt). vibrating near zero value.
When the object moves, I there are the same waves with changing amplitude.
The graph can tell that there may be some force applying to the system and which produces forced occilations. So I am interested in removing such kind of noise. I do not know what force causes such occilations. Soon I hope I will get some data on the non moving road with and without object on it for comparison with moving road case.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

时光礼记 2024-10-01 23:44:28

最后一个图中的基本上是来自以下函数的调幅振荡:

 f[x] := 10 * (4 + Sin[x]) * Sin[80 * x]

已选择常数来匹配您的图(仅使用经验法则)

该函数的图为

alt text

这不是“噪音”(尽管也可能存在一些噪音),但可以轻松过滤。

让我们看看您的静态和移动有效负载的数据......

编辑

根据您对几条评论的回复,并根据我之前使用称重设备的经验:

  1. 您正在与物理世界连接,而不仅仅是获得通过鼠标和键盘输入。这对于您了解该设备、它的工作原理以及它的设计方式非常重要。
  2. 您需要一个校准程序。您必须使用多个主重量来确保设备在整个秤中正常且线性地工作,并且静态情况下的测量结果比您的动态需求要好得多。
  3. 在进行一些实验并仔细查看结果图之前,您将无法预测是否可以测量传送带中的多个负载。
  4. 您需要确保放置在传送带中任何位置的负载显示相同的读数。或者至少你应该能够将阅读和位置联系起来。

正如我之前所说,您需要大量信息,但似乎无法获得。我总是与设计该设备的工程师作为一个团队合作。

请随时添加更多信息...

What you have in your last plot is basically an amplitude modulated oscillation coming from a function like:

 f[x] := 10 * (4 + Sin[x]) * Sin[80 * x]

The constants have been chosen to match your plot (using just a rule of thumb)

The Plot of this function is

alt text

That isn't "noise" (although may be some noise is there too), but can be filtered easily.

Let's see your data for the static and moving payloads ....

Edit

Based on your response to several comments, and based in my previous experience with weighting devices:

  1. You are interfacing the physical world, not just getting input from a mouse and keyboard. It is very important for you understand the device, how it works and how it is designed.
  2. You need a calibration procedure. You have to use several master weights to be sure that the device is working properly and linearly in the whole scale, and that the static case is measured much better than your dynamic needs.
  3. You'll not be able to predict if you can measure with several loads in the conveyor until you do some experiments and look very carefully at the resulting plots
  4. You need to be sure that a load placed anywhere in the conveyor shows the same reading. Or at least you should be able to correlate reading and position.

As I said before, you need a lot of info, and it seems that is not available. I always worked as a team with the engineers designing the device.

Don't hesitate to add more info ...

梦屿孤独相伴 2024-10-01 23:44:28

您是否尝试过具有低通特性的滤波器?平滑数据的方法有多种(即 Savitzky-Golay、高斯、移动平均),但通常,简单的 N 点中值滤波器就足够了。

这实际上取决于你想要什么。

Have you tried filters with lowpass characteristics? There are different approaches for smoothing data (i.e. Savitzky-Golay, Gauss, moving average) but often, a simple N-point median filter is already sufficient.

It really depends on what you're after.

我的黑色迷你裙 2024-10-01 23:44:28

看看这本书:

科学家和工程师数字信号处理指南

您可以免费下载。特别是,请查看第 14 章和第 15 章。

Take a look at this book:

The Scientist and Engineer's Guide to Digital Signal Processing

You can download it for free. In particular, check chapters 14 and 15.

有深☉意 2024-10-01 23:44:28

如果频率随质量变化并且您正在尝试测量质量,为什么不测量振荡频率并将其用作主要测量方法呢?

否则,您需要一个可调谐的陷波滤波器 - 找出“噪声”的频率并将陷波滤波器调整到该频率。

另一本值得尝试的书是 Lyons 理解数字信号处理

If the frequency changes with mass and you're trying to measure mass, why not measure the frequency of the oscillations and use that as your primary measure?

Otherwise you need a notch filter which is tunable - figure out the frequency of the "noise" and tune the notch filter to that.

Another book to try is Lyons Understanding Digital Signal Processing

謸气贵蔟 2024-10-01 23:44:28

为了平滑信号,我会对之前的 2 * n 样本进行平均,其中 n 是振动的最大预期波长。

这应该会消除大部分噪音。

In order to smooth the signal, I'd average the previous 2 * n samples where n is the maximum expected wavelength of the vibrations.

This should cause most of the noise to be eliminated.

檐上三寸雪 2024-10-01 23:44:28

如果您对频率范围有所了解,则可以进行简单的平均,只要测量周期足够长,足以达到您想要达到的精度水平。平均数据的波长越多,部分波长造成的误差的比率就越小。

我建议首先在 Matlab 等软件中对此进行模拟/建模。

您需要考虑的数据:

振动频率的预期范围
您想要达到的测量精度
您想要测量的预期质量范围
质量与振动幅度的函数

If you have some idea of the range of frequencies, you could do a simple average as long as the measurement period were sufficiently long to give you the level of accuracy you want to achieve. The more wavelengths worth of data you average against, the smaller the ratio of contributed error from a partial wavelength.

I'd suggest first simulating/modeling this in software like Matlab.

Data you'll need to consider:

The expected range of vibration frequencies
The measurement accuracy you want to achieve
The expected range of mass you'll want to measure
The function of mass to vibration amplitude

送君千里 2024-10-01 23:44:28

您应该能够应用与降噪麦克风相同的原理:放置两个传感器,然后从主传感器(靠近良好信号源)的信号中减去辅助传感器(远离良好信号源)的信号。

显然,如果“噪声”相当均匀地到达两个传感器,而“信号”更强烈地到达主传感器,则效果最佳。

对于声音之类的东西,这在传感器本身中很容易做到,这使得您的软件更加简单且性能更高。根据您测量的内容,使用多组硬件并在软件中进行取消可能更容易完成。

You should be able to apply the same principles as noise-cancelling microphones: put two sensors out, then subtract the secondary sensor's (farther away from the good signal source) signal from the primary sensor's (closer to the good signal source) signal.

Obviously, this works best if the "noise" will reach both sensors fairly equally while the "signal" reaches the primary sensor much more strongly.

For things like sound, this is pretty easy to do in the sensor itself, which makes your software a lot easier and more performant. Depending on what you're measuring, this might be easier to do with multiple sets of hardware and doing the cancellation in software.

双马尾 2024-10-01 23:44:28

如果您可以表征不需要的振动噪声的频谱,您也许能够合成一组(接近)最小相位陷波或带阻滤波器,以允许您以所需的信噪比获取所需的信号具有最小化的延迟或数据集大小。

If you can characterize the frequency spectra of the unwanted vibration noise, you might be able to synthesize a set of (near) minimum phase notch or band reject filter(s) to allow you to acquire your desired signal at your desired S/N ratio with minimized latency or data set size.

苦妄 2024-10-01 23:44:28

正如之前的海报所指出的,过滤嘈杂的数字信号非常简单。有很多参考资料。然而,您还没有明确说明您的目标,因此我们无法为您指出一个好的方向。您是否正在寻找桥梁上单个物体的单一测量? [然后查看其他答案]。

您是否正在监控这座桥上的交通并在每个实体经过时对其进行称重?然后,您需要确定实体何时位于传感器上以及何时不在传感器上。通常,只要传感器的本底噪声明显低于您正在测量的信号,就可以通过简单的阈值处理来实现。

您是否正在尝试测量其他车辆引起的桥梁振动?在这种情况下,如果您在执行此操作时遇到问题,则需要更昂贵的传感器,或者更清晰的测量目标。

Filtering noisy digital signals is straight forward, as previous posters have noted. There are lots of references. You have not however stated what your objectives are clearly, so we cannot point you into a good direction. Are you looking for a single measurement of a single object on a bridge? [Then see other answers].

Are you monitoring traffic on this bridge and weighing each entity as it passes by? Then you need to determine when entities are on the sensor and when they are not. Typically, as long as the sensor's noise floor is significantly lower than the signal you're measuring this can be accomplished by simple thresholding.

Are you trying to measure the vibrations of the bridge caused by other vehicles? In which case you need either a more expensive sensor if you're having problems doing this, or a clearer measuring objective.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文