create a signal for a specified duration

9 views (last 30 days)
I would like to do this in simulink. I want to generate a random number for example 0.745 (as a signal) that lasts for 0.5 seconds, then the signal goes down to zero for 2 seconds, and then another random number is generated for example -0.234 (as a signal) which lasts for another 0.5 seconds and then dies down, and the process continues until the simulation ends. The simulation sampling time is 0.1 seconds, so there are signals that are generated at 10hz which my random signal will be added to. (more or less like a step input with random magnitude that dies down after a pre-specified amount of time, and then it comes back on again).
Thank you !

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 1 Aug 2013
Use three blocks
  1. Prod block to multiply the two below blocks
  2. random number block with sample time set to 0.5
  3. repeating sequence stair with sample time set to 0.1 and value to [ones(1,5) zeros(1,20)]
  2 Comments
pemfir
pemfir on 1 Aug 2013
Edited: pemfir on 1 Aug 2013
Thank you I get an error related to discrepancy between sample times of Prod block and the random number block ... The sample time 0.01 of '......Product' at input port 1 is different from the sample time 2 of '.....Random Number' at output port 1.
pemfir
pemfir on 1 Aug 2013
Okay it works if i put a "rate transition" block in front of the random block that converts the sampling time to 0.1 (simulation sampling rate).

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!