How can I hold an impulse value for a given time period using Simulink?

3 次查看(过去 30 天)
Hi
I am doing some research using Simulink, and want to hold an impulse value for a given time period.
For example, if the input is an impulse at t = 10, that is,
x(t) = 1 (10 <= t <= 10.02), 0 (elsewhere),
then my desired output is the following:
y(t) = 1 (10 <= t <= 15), 0 (elsewhere).
In other words, I want to hold the impulse value (1) for five more seconds.
How can I do this?
Thanks in advance. :)

回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2013-8-30
Use a zoh block with sample time set to 5
  2 个评论
Hancheol
Hancheol 2013-8-30
Hi Azzi Thanks for your answer. ;) You're right. I tried a simulation in which I had created an impulse, added a zoh, and got a successful result. But when I try this to my situation, it does not work. In my case the impulse (input) comes from an 'edge detector' block, and I'm wondering if this affects the results...
Azzi Abdelmalek
Azzi Abdelmalek 2013-8-30
I think it's not a good solution, because the zoh block will hold during 5s the first value, if it's the high value of your pulse (suppose 1), then the zoh will hold the value 1 during 5s, and if it's 0, then 0 will be hold). We should find another solution

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Simulink 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by