In the model Modelica.Electrical.PowerConverters.DCAC.Control.IntersectivePWMIntersectivePWM there are issue with the propagation of three parameters:
1 Array size of trapezoid
Modelica.Blocks.Sources.Trapezoid trapezoid[3](...);
should be
Modelica.Blocks.Sources.Trapezoid trapezoid[m](...);
2 Start time porpagated to trapezoid
Modelica.Blocks.Sources.Trapezoid trapezoid[3](
each final amplitude=uMax,
each final width=0,
each final nperiod=-1,
each final offset=-uMax/2,
each final rising=0.5/f,
each final falling=0.5/f,
each final period=1/f,
final startTime={startTime - 1.25 + (if refType == ReferenceType.Triangle1
then 0 else k)/m for k in 0:m - 1}/f)
if (refType==ReferenceType.Triangle1 or refType==ReferenceType.Triangle3);
The units of the expression final startTime=startTime - 1.25 + (if refType == ReferenceType.Triangle1 then 0 else k)/m for k in 0:m - 1}/f do not match as startTime is added 1.25 and other real expressions.
3 Start time porpagated to sawTooth
Similar issue as 2. The propagation reads final startTime={startTime - 1.5 + (if refType == ReferenceType.Sawtooth1 then 0 else k)/m for k in 0:m - 1}/f
I understand the different phase start times associated with Triangle1 and Triangle3 but I can only suspect that the term 1.5 shall ensure that
- all the reference signals are fully up at
time >= startTime
- the first reference signal start with half the maximum value
So my understanding for a three phase saw tooth PWM is:

In the model
Modelica.Electrical.PowerConverters.DCAC.Control.IntersectivePWMIntersectivePWMthere are issue with the propagation of three parameters:1 Array size of
trapezoidshould be
Modelica.Blocks.Sources.Trapezoid trapezoid[m](...);2 Start time porpagated to
trapezoidThe units of the expression
final startTime=startTime - 1.25 + (if refType == ReferenceType.Triangle1 then 0 else k)/m for k in 0:m - 1}/fdo not match as startTime is added 1.25 and other real expressions.3 Start time porpagated to
sawToothSimilar issue as 2. The propagation reads
final startTime={startTime - 1.5 + (if refType == ReferenceType.Sawtooth1 then 0 else k)/m for k in 0:m - 1}/fI understand the different phase start times associated with
Triangle1andTriangle3but I can only suspect that the term1.5shall ensure thattime >= startTimeSo my understanding for a three phase saw tooth PWM is: