Random variation in a signal in Simulink
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
davide
el 18 de Feb. de 2020
Comentada: davide
el 22 de Feb. de 2020
I need to solve this problem in simulink.
I want to create a signal like the one in the picture, that at instant 4 sec change from 1 to 0 in 0.3 sec and then return to 1 from 5.7 sec to 6 sec. In this case the sequence starts at instant 4 sec.
The problem is that this sequence has to be introcuced in a simulink simulation at different time instants, that occurs randomnly. I tried to utilize some triggered blocks, but without success.
Has anyone a solutions?
0 comentarios
Respuesta aceptada
Giuseppe Inghilterra
el 19 de Feb. de 2020
Hi,
if you can use stateflow in your simulink model, following chart could be a solution:
As you can see you start from state A where yout = 1. Then if a trigger input changes to true you pass to state A1 where yout starts to decrease by 0.01/0.3 at each simulation step. When yout reaches zero you pass to A2 state. Wait for 0.4 seconds and then you pass to state A4, where yout is incremented by 0.01/0.3 at each simulation step until it reaches one. Then you come back to state A.
This cycle is activated when trigger becomes true.
For example my trigger is generated by a sine wave function as shown below:
obtaining the following result:
Note that I run simulation with fixed step solver type and 0.01 as fixed step size.
Más respuestas (0)
Ver también
Categorías
Más información sobre Sources en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!