Generate Specific noise(i.e. 60 or 70 Hz) Matlab

22 ビュー (過去 30 日間)
Utpal Mozumder
Utpal Mozumder 2020 年 10 月 21 日
コメント済み: Utpal Mozumder 2020 年 10 月 21 日
I want to add some artificially noise of specific frequency. Can someone help?

採用された回答

Ameer Hamza
Ameer Hamza 2020 年 10 月 21 日
編集済み: Ameer Hamza 2020 年 10 月 21 日
If you just want to add a specific frequency noise in you signal then try this
f = 5;
fn = 60;
t = linspace(0, 1, 200);
y = sin(2*pi*f*t);
yn = 0.2*sin(2*pi*fn*t);
y = y + yn;
plot(t, y)
Check the fft() of the signal and you will see peaks at 5Hz (original signal) and 60Hz (noise)
Fs = 1/(t(2)-t(1));
fv = linspace(0, 1, numel(t))*Fs;
mag = abs(fft(y));
plot(fv, mag);
  2 件のコメント
Utpal Mozumder
Utpal Mozumder 2020 年 10 月 21 日
Thanks a lot
Utpal Mozumder
Utpal Mozumder 2020 年 10 月 21 日
Is it possible to shift the phase of the original signal with this noise?

サインインしてコメントする。

その他の回答 (1 件)

KSSV
KSSV 2020 年 10 月 21 日
L = 60 ; % Length in sec
f = 60 ; % Frequency in Hz
Fs = 10000 ; % Sampling Frequency
t = linspace(0, L, Fs*len); % time Vector
x = sin(2*pi*f*t);
noise = x + 0.1*randn(size(x));

カテゴリ

Help Center および File ExchangeSpectral Measurements についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by