Generate a random signal with varying frequencies and constant rms

34 次查看(过去 30 天)
Hi
I am busy doing a project regarding the ISO 2631-1 filters that you apply to accelerometer data to evaluate human comfort. I am done with the filter design and is testing it at the moment.
I want to generate a random signal, x (time) and y (acceleration), where the signal has an RMS of 1, but the frequency of the signal varies. So I am currently extracting the dominant frequencies from my FFT data, so I want multiple frequencies to extract from the FFT. The frequencies of the signal should range between 0.1 Hz and 80 Hz.
Can anayone help please

回答(1 个)

Garv Agarwal
Garv Agarwal 2023-7-20
Hi Daniel,
From my understanding, you want to generate a random signal with varying frequncy but constant rms value.
For generation the random frequencies, you can use the rand function-
r = minVal + (maxVal-minVal)*rand(sampleSize)
Then you can use these frequencies to create a sine wave.
The signal generated will then have to be normalized to have rms value of 1. You can do this by dividing the signal by its own rms value -
signal = signal/rms(signal)
You can read more about these functions, from the following documentations -

产品


版本

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by