Determine if the data contains a 50 Hz sine wave and if so, over what time period..

4 visualizaciones (últimos 30 días)
Question: The file prob2_33_data.mat contains a signal x (fs = 500 Hz). Determine if this signal contains a 50-Hz sine wave and if so over what time periods. Do I determine it is a sone wave by finding the correlation coefficient?
Code + data:
% Problem2_33.mat
% Determine if this signal contains a 50-Hz sine wave and if so ...
% over what time periods.
clear all;
close all;
clc;
fs = 500; % Sample frequency
load prob2_33_data.mat; % get data of input signal from file
figure;
subplot(2,1,1);
plot(x); % Plot of input signal x(t)
xlabel('Time (sec)','FontSize',18);
ylabel('Signal (milli volts)','FontSize',18);
title('Random input signal x(t) ','FontSize',18);
grid on;
f = 50;
t = (1:fs/f)/fs; % Generate only 1 cycle
y = sin(2*pi*f*t); % Generate a sine wave
subplot(2,1,2);
plot(t,y); % Plot the 50Hz
xlabel('Time (sec)','FontSize',18);
ylabel('Signal (milli volts)','FontSize',18);
title('50 Hz signal y(t) ','FontSize',18);
grid on;
[rxy, lags] = crosscorr(x,y,'p'); % compute the cross correlation of the signal x and y
figure(2);
plot(lags,rxy); % Plot of auto corleation between 2 signal x and y
xlabel('Lags (n)','FontSize',14);
ylabel('r_x_y','FontSize',14);
title('Cross corelation between x(t), y(t) ','FontSize',18);
grid on;
[max_corr1, max_shift1] = max(rxy(1:1500)); % Plot show two possible peaks
figure(3);
plot( [max_corr1 max_shift1]);
[max_corr2, max_shift2] = max(rxy(1500:2500)); % Toward begining and middle of data
[max_corr3, max_shift3] = max(rxy(2500:4000)); % Plot show two possible peaks
Td1 = lags(max_shift1)/fs; % Time shift 1
Td2 = lags(max_shift2+1500)/fs; % Time shift 2
Td3 = lags(max_shift3+2500)/fs; % Time shift 3
disp('Max corr ');
disp([max_corr1 max_corr2 max_corr3 ]);
disp(' Times (sec)');
disp([ Td1 Td2 Td3]);
  1 comentario
dpb
dpb el 23 de Feb. de 2023
What is the signature for the function <crosscorr>?
There is no named parameter 'p' and even if were, it would need a value to go along with it as the error message says...look at the examples for the function that illustrate using those.

Iniciar sesión para comentar.

Respuestas (1)

Image Analyst
Image Analyst el 23 de Feb. de 2023
Have you tried periodogram and spectrogram?
  2 comentarios
dpb
dpb el 24 de Feb. de 2023
As it is homework, will leave specific code to the student; I'd venture there's a section towards the beginning of the signal that has a decent 50 Hz energy content, but beyond that, there's not a lot too choose...some content but nothing very dominant...

Iniciar sesión para comentar.

Categorías

Más información sobre 2-D and 3-D Plots en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by