location zero crossings of the signal

The following program produces sine signal plus noise. I have to write a function(Call zero crossing function that you see in the code below) in MATLAB to identify location zero crossings of the signal,found the locations where Signal changes sign.
clc
clear all
close all
N=1000; %Number of samples
n=0:N-1; % Sample index
Ts=0.0025; %Sample interval
f1=2; %freq=2Hz
%Generate signal+noise
x=0.5*sin(2*pi*f1*n*Ts+pi/4)+0.01*randn(size(n));
*_%Call zero crossing function
I=find_zero_cross_fnc(x);
s=zeros(size(I));_*
% Plot results
figure
stairs(x,'Linewidth',1), hold on
stem(I,s,'*r','Linewidth',3)

3 Kommentare

Wayne King
Wayne King am 14 Dez. 2012
So what are you asking from us?
Roman
Roman am 18 Dez. 2012
function(zero crossing) that identify location zero crossings of the signal,found the locations where Signal changes sign.
John Petersen
John Petersen am 18 Dez. 2012
See my answer below.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

John Petersen
John Petersen am 15 Dez. 2012

0 Stimmen

You could let this be your zero crossing function.
zind = diff(x>0);

Tags

Gefragt:

am 14 Dez. 2012

Community Treasure Hunt

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

Start Hunting!

Translated by