How to generate a signal with time delay?
1 次查看(过去 30 天)
显示 更早的评论
Hello guys,
I'm creating a model in Simulink in which I have a sinusoidal input and I need to generate an output signal like the following:
100 if the signal is positive
zero when the value of the signal is whithin the range [-0.1,0.1]. This output value must be kept during 1 second regarless the value of the input.
-100 if the signal is negative.
I'm not sure if it's better to use delay blocks or a matlab function.
Any ideas??
Thanks.
2 个评论
Basavalingappa Mudhol
2018-12-7
Let me know if its this behaviour you expected i can give solution for this
采纳的回答
Basavalingappa Mudhol
2018-12-7
Basically There are three parts in my model
1(in picture) this logics checks your base condition like if the input lies in which range >0.1 or <0.1 based on this either 100 or -100 is set
And the tricky part. if its in the range of 0.1 to -0.1 hold it for 1 sec. this is done by part 2 and 3(in Picture).
Here in part 2 is for the timer of 1 second. once your input is wihin range it triggers a counter until 1 sec.
and part 3( in picture). this is to latch he output to 0 for 1 second. after 1 second the counter is reset and it rechecks for the input.
I am bad at explaining may be this gives you a basic idea.
Please comment if you have questions. and vote and accept the answer if it solves your question.
I just tried to do a quick modelling . So this can be optimised even further if its just for simulation or you need to for code generation
thanks. :) Nice problem
2 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!