This example shows the difference in behavior of the Pulse Generator block in time-based and sample-based modes.
Consider this model, with two Pulse Generator blocks. One block has the Pulse type parameter set to Time based, and the other to Sample based. Both blocks are configured to output a pulse with an amplitude of one that is
on for five seconds, followed by
off for five seconds. The simulation time runs from three seconds to a stop time of 18 seconds. Notice the time offset notice in the lower right corner.
ans = Simulink.SimulationOutput: tout: [61x1 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]
Notice that the time-based Pulse Generator produces an
on signal for only two seconds and then switches to
off. This is due to the block starting to compute the output from t=0 even though it does not output the simulation until t=3. The sample-based block outputs a pulse of five seconds
on followed by five seconds
off. In this case, the block output does not depend on simulation time and starts only when the simulation starts.