Two LAUNCHXL-F28069M Synchronize issue

Hello:
I met some problems can’t fixed. The duty cycle of ePWM1A on Board 1 has been set to 50% to ensure a clear rising edge for synchronization, and the ePWM1A output pin from Board 1 is connected via jumper wire to the External Sync input of Board 2.
However, the PWM outputs on Board 2 do not exhibit any consistent or fixed phase shift relative to each other, all outputs appear to rise at the same time, which means the phase shift input may not be working as intended.

best regards,
Vout controlled(2 CTRL 1 by 1)NPC-DAB.plecs (355.0 KB)

Hello!

I was able to confirm the issues that you were running into. I see the following behavior, and perhaps you can confirm:

  1. When the board is initially programmed, if the external sync is not yet connected no phase is applied to the board “Ctrl2” for the second and third channels. This is expected behavior - a synchronization pulse is needed for the phase to be applied directly after programming. Once the synchronization pulse is seen via the external sync being connected, phases will then be applied. This is a bit of odd functionality on our end that we are considering if we can provide a more ideal solution for.
  2. When external sync is applied, I am seeing on my end that your third channel (PWM3A/B) is stuck constant high/constant low. This is due to a fairly niche bug when using external sync - it is possible that due to clashing timing, the synchronization pulse can cause a compare event to be skipped. This seemed to be happening with your model. This can be fixed (in my testing, I’d confirm on your end) by changing your saturation threshold from 1.57 to 1.5701.

I hope this is informative to you! Definitely let us know if you continue to face issues with this or you have further questions.

In this setup, a jumper wire is used to connect the ePWM1A output pin from Board 1 to the External Sync input of Board 2 after building the control processes on both boards and the saturation threshold is set to 1.5701.
However, in external mode, the rising edges of the PWM signals still occur at the same time as shown on the scope I’m not sure if this issue can be solved.
Vout controlled(2 CTRL 1 by 1)NPC-DAB.plecs (347.7 KB)

Hello,

I investigated your setup with both boards and the RTBox. The problem appears to be that the pin that is used for external sync (pin 32) is connected to a digital out on the RTBox. Because of the impedance of the circuit for the RTBox digital out, the first LaunchPad is unable to properly drive this pin on the second LaunchPad. This means that the second board is not being sync’d to the first board, and the phases are not being applied for the reasons I outlined in part 1 of my previous answer.

To remedy this, most likely you need some sort of interface between your board and the RTBox. Something like this: 2Pcs 2.54mm 2x10 20 Pin Female Straight Double Long Pin Header Strip PC104 | eBay would allow you to snip the connection between pin 32 of the LaunchPad and the RTBox, allowing you to properly drive the external sync with the other LaunchPad.

The only other supported pin for external sync is pin 6, which I believe with your setup there is no way to utilize this (as PWM4A/B is needed by your setup).

Let me know if this makes sense to you or I can offer any other help!

I realized an alternate solution for your problem as well - I’ve attached a model to show this off. Essentially, you can synchronize your model by having the RTBox itself drive external syncs for both chips. So what I’ve done is setup the RTBox to use a pulse generator to drive the external syncs for both 2806s (GPIO 32 on C2000, digital out 27/59 on RTBox). In order to get this to work I had to re-arrange your task setup a bit, but it appears this achieves the desired functionality as well!

Hope this helps!
Vout controlled-2_CTRL_1_by_1-NPC-DAB.plecs (341.3 KB)

1 Like

Thank you very much! This solution really worked for me — I’ve been stuck on this for weeks.


I’d like to ask about the PWM signal—it looks like it doesn’t rise and fall directly, but instead ramps up and down. Is that normal, or could it be a problem with my settings?