How to Use TI C2000 PWM (Variable)?

Dear all,

  1. Can anyone tell me how to use TI C2000 PWM (Variable) block?
    I am testing a single-phase DC/AC circuit using the latest version of this PWM block as shown in the figure below.

I already put the PWM block into a subsystem and can access the switching signals. However, the output voltage is not a sinusoidal waveform as it is supposed to be. Am I using the PWM block correctly? If not, can you tell me how to adapt it to my system?

  1. Is there any example showing how to use TI C2000 PWM (Variable) block for variable duty cycle, variable frequency, and phase shift for multiple phases?

I have attached my simulation files.
OpenLoop.slx (33.8 KB)
OpenLoop_Parameters.m (674 Bytes)

I have reviewed your “Simple Model” in the TI C2000 Target Support Demos. However, your example is still slightly different than my offline testing. So, I’d love to have your suggestions on my specific application. I look forward to hearing from all of you! Thanks.

Sincerely,
Mark Lin

Hi Mark,

I believe you are using the PWM Out block in the right way, the PWM waveforms seem consistent with the duty cycle modulation you are using. Something you need to check is that the in the sine wave block for the duty cycle modulation you have set the frequency as 100 rad/s, while for the load current you have used 100 Hz. Setting both to the same frequency, I see a sinusoidal output voltage.

Regarding the use of the PWM Out block, the help seciton of the blocks explains everything that is needed, and some TI Demo models use it, for example, " LLC Resonant Converter", and " Dual-core Control of an On-Board Charger".

1 Like

Hi Enrique,

Thank you for your information, and now I can see a sinusoidal output voltage by following your suggestion. However, I cannot find any demo example containing a PWM that can be adapted to my system.

Now I am interleaving 2 bridge-legs, but the PWM output signals seem to be incorrect since only 1 switching signal is operating normally. Please see the attached figures and file for details.


OpenLoop.slx (34.9 KB)

Why can this PWM block not generate 2 switching signals for my circuit? Is there any mistake I have made for the PWM settings? Thanks.

Sincerely,
Mark Lin

Hi,

If I take your model as is, import it to PLECS Standalone, and run it, the PWM look completely fine to me.

Hi Mark,

I’ll note you have asked a similar question via support@plexim.com. In the future please refrain from asking in both locations, or at a minimum note you have a parallel request in process. This minimizes duplicate efforts from our engineering team.

I’m noting here the conclusions drawn from that exchange for future forum visitors: there is a bug in the offline model of the PWM variable block that seems to manifest only in PLECS Blockset. The developers are looking into the issue, but it will likely need to be addressed in a future bugfix release. Thank you for bringing this to our attention!

Regards,
Bryan

1 Like

Dear Mr. Bryan,

Thank you for letting me know this information. I will prevent from asking the same question in two locations in the future. Thanks!

Sincerely,
Mark Lin

1 Like