Need to shift a PWM signal (square wave) in simulink
32 visualizaciones (últimos 30 días)
I have a system where I have three PWM signals that I need at 0 degrees, 120 and 240, I have attempted several methods without any success. I've seen similar systems use the transport delay block but when I use this it distorts the signal. Additionally the discrete variable time delay has made the system very slow when using it to the point that my simulation won't run. Is there another option?
Thanks for any help
Suman Sahu el 21 de Ag. de 2023
You have three PWM signals and you want to phase shift the signals by 0, 120 and 240 degrees respectively. You have tried using the ‘Transport Delay’ block and the ‘Discrete Variable Time Delay’ blocks. Since the ‘Discrete Variable Time Delay’ block has made the system slow, you can try increasing the sample time or reducing the delay time to achieve a better balance between accuracy and simulation speed. Additionally, you can try experimenting with different solvers to improve the simulation speed.
You can try using the ‘Propagation Delay’ block. The first input to the block is the signal to be delayed or phase shifted, and the second input is the delay signal where you can pass the delay time (in seconds) through a constant block. The delay time corresponding to the phase shift in degrees can be calculated based on the time period of your signals.
Please refer to the following documentations to learn more about the ‘Propagation Delay’ block: