Info
This question is closed. Reopen it to edit or answer.
Best way to time different signals
2 views (last 30 days)
Show older comments
Hey everyone, I'm a beginner so pleace be forgiving ;-)
What is the best way to time different signals? Let's say, I have an output that should be constant 1000 as long as my value X*Y (fed back values) is smaller than Z. If the product becomes larger than Z, I want the product as my output. And after 3 seconds, the output should be 0. What would be the appropriate way to do this?
I have googled for quite some time now but I can't get it to work. I managed the first part but probably not in a way it should be done...
Appreciate any input! Thank you!
Answers (1)
Christiaan
on 3 Jun 2015
Dear Mathias,
I hope this piece of code can help you on your way. You may have a look at it.
The only point where you would have to modify the code, is for the case the time step is smaller or larger then one.
clc;clear;close all
t = linspace(0,800,800);
dt = t(2)-t(1);
x = t;
y = sin(t/10);
treshold = 5;
for i=1:length(t)
xy(i) = x(i)*y(i);
if xy(i)>treshold
state(i)=1;
else
state(i) = 0;
end
if dt*i>10
if sum(state(i-2:i))==3
xy(i) = 0;
state(i)=0;
end
end
end
subplot(3,1,1);
plot(t,state);
subplot(3,1,2);
plot(t,x.*y)
subplot(3,1,3);
plot(t,xy)
grid on
Good luck! Christiaan
1 Comment
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!