How do I perform envelop on a time signal

3 ビュー (過去 30 日間)
Osasu
Osasu 2013 年 7 月 25 日
編集済み: Lisa Justin 2014 年 4 月 15 日
I have a vibration time signal from .lvm file I want to perform envelop on. Any ideal of the code to use? I want to use the result for worm gear fault detection.
I am particularly interested in the high frequency region.

回答 (2 件)

Youssef  Khmou
Youssef Khmou 2013 年 7 月 25 日
hi,you have Analog methods :
1. Frequency Modulation :
Fs = 8000; % Sampling rate of signal
Fc = 3000; % Carrier frequency
t = [0:Fs]'/Fs; % Sampling times
s1 = sin(2*pi*300*t)+2*sin(2*pi*600*t); % Channel 1
s2 = sin(2*pi*150*t)+2*sin(2*pi*900*t); % Channel 2
x = [s1,s2]; % Two-channel signal
dev = 50; % Frequency deviation in modulated signal
y = fmmod(x,Fc,Fs,dev); % Modulate both channels.
z = fmdemod(y,Fc,Fs,dev); % Demodulate both channels.
2. Amplitude Modulation :
% Sample the signal 100 times per second, for 2 seconds.
Fs = 100;
t = [0:2*Fs+1]'/Fs;
Fc = 10; % Carrier frequency
x = sin(2*pi*t); % Sinusoidal signal
% Modulate x using single- and double-sideband AM.
ydouble = ammod(x,Fc,Fs);
ysingle = ssbmod(x,Fc,Fs);

Lisa Justin
Lisa Justin 2014 年 4 月 15 日
編集済み: Lisa Justin 2014 年 4 月 15 日
x = 1:100;
y1 = rand(1, 100);
y2 = rand(1, 100);
y3 = rand(1, 100);
joined = cat(1, y1, y2, y3);
env_max = max(joined, [], 1);
env_min = min(joined, [], 1);
plot(x, joined);
hold('on');
plot(x, env_max, 'k');
plot(x, env_min, 'k');

カテゴリ

Help Center および File ExchangeAcoustics, Noise and Vibration についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by