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 件のコメント

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

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

回答 (1 件)

John Petersen
John Petersen 2012 年 12 月 15 日

0 投票

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

タグ

質問済み:

2012 年 12 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by