Sei sulla pagina 1di 2

TUGAS ANALISIS SINYAL BIOMEDIS

PEMBUATAN RANDOM NOISE, POWERLINE, DAN MOTION ARTIFACT


Oleh : Ewika Nadya I - 081411731012
Putri Desyntasari - 0814117330

Berikut koding MATLAB untuk pembuatan ketiga noise dan pembuatan filter
Butterworth dan LowpassFilter

% Sampling
fs = 100;
Ts = 1/fs;
% Time vector
t = 1:Ts:11-Ts;
% Signal
f = 1; % Frequency [Hz]
a = 1; % Amplitude
signal = normal; % Sample sinusoidal signal. Your ECG
signal goes here.
% Noise A - Random Noise
A_noise = 30;
% Noise B - Powerline Interference
B_fNoise = 60; % Frequency [Hz]
B_aNoise = 0.05; % Amplitude
B_noise = B_aNoise*sin(2*pi.*t.*B_fNoise);
% Noise C - Baseline / Motion Artifact Noise
C_fNoise = 0.1; % Frequency [Hz]
C_aNoise = 0.25; % Amplitude
C_noise = C_aNoise*sin(2*pi.*t.*C_fNoise);
% Signal + Noise
A_signal = normal+A_noise*randn(size(normal));
B_signal = signal + B_noise*length(normal);
C_signal = signal + C_noise*length(normal);
D_signal = A_signal + B_signal + C_signal;
%FIter Signal
[b,a] = butter(1,0.9,'low'); % IIR filter design
y = filtfilt(b,a,D_signal); % zero-phase filtering
y2 = filter(b,a,D_signal); % conventional
filtering
[b,a] = butter(1,0.9,'low'); % IIR filter design
y = filtfilt(b,a,y2); % zero-phase filtering
y3 = filter(b,a,y2); % conventional filtering
lpFilt = designfilt('lowpassfir', 'PassbandFrequency', 0.5,...
'StopbandFrequency', 0.6, 'PassbandRipple', 1, ...
'StopbandAttenuation', 10, 'DesignMethod',
'kaiserwin');
y4 = filter(lpFilt,y3); % apply filter to your data
% Plots
figure();
subplot(3,1,1);
plot(t, normal);
xlabel('Time [s]');
ylabel('Amplitude');
title('Original Signal');
subplot(3,1,2);
plot(t, D_signal);
xlabel('Time [s]');
ylabel('Amplitude');
title('Original Signal + Random Noise, Powerline Noise, and
Baseline Noise');
subplot(3,1,3);
plot(t,y4);
xlabel('Time(s)');
ylabel('Amplitude(V)');
title('Filtered Signal');
Pemberian Ketiga Noise

Setelah Ketiga Noise Digabung

Ploting Sinyal Setelah Difilter

Potrebbero piacerti anche