MATLAB: How to design a customized sample based signal in Simulink

sample timesimulationsimulink

I am trying to design a source block in simulink, that takes sample count and data values as inputs and generates a signal corresponding to number of samples and data values for samples specified.
for example, user enters sample count and data value in the mask parameter of the block as [4 5.2;6 3.2]. The block should generate value 5.2 for the duration 4*sample time and value 3.2 for the duration 6*sample time.
sample time is the simulink model sample time set in configuration parameters.

Best Answer

Hi Venkat,
You can do this by creating a custom block mask around the existing Repeating Sequence Stair block.
I've modified your suggested approach a little bit so you have 2 separate vectors for the number of samples and the actual data values. After creating the mask, you can get something like this:
Inside the block, I just have a Repeating Sequence Stair block that uses the specified sample time (Ts) and some other vector named val. This vector is defined in the Mask Initialization Commands.
The Scope output is shown below.