波形のゼロ点を抽出する方法
조회 수: 15 (최근 30일)
이전 댓글 표시
図のように波形があり、ピークの点から立ち下がる時の0点を取りたいです。条件として0点がない場合正と負で挟まれた点の負の点を取りたいです。どなたかお時間ある方助言をお願い致します。(今回の波形はあくまで例です)
댓글 수: 0
채택된 답변
Atsushi Ueno
2021년 7월 9일
편집: Atsushi Ueno
2021년 7월 9일
csvファイルから読み込んだ値に対してのゼロクロス検出。また、閾値変更方法について。 - MATLAB Answers - MATLAB Central (mathworks.com) を参考にして「ピークの点から立ち下がる時の0点」のインデックスをindexに格納しました。
t = 0:0.001:0.1;
y = sin(t*pi*180/3.0); % 今回の波形はあくまで例です
plot(t,y,'o');
hold on;
line(t,zeros(size(t))); % y=0の線を引く
index = find(y(1:end-1) > 0 & y(2:end) <= 0) + 1 % 0点がない場合正と負で挟まれた点の負の点
plot(t(index), y(index),'o','MarkerSize',10); % ピークの点から立ち下がる時の0点を大きなマーカでプロット
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!