I would not use a fixed “N seconds per motor” rule. Size the electrical problem first, then let the PLC advance on measured recovery; the timer is a backstop, not the proof that the bus is ready.
1. Calculate each start case
Collect, per motor: FLA, locked-rotor/start current (or the soft-starter/VFD current limit), start power factor, acceleration time, load torque and permitted starts/hour. For the supply collect utility fault level, transformer kVA/%Z/X:R, feeder impedance, existing running load and the minimum ride-through voltage of contactors/drives/process loads.
A useful first screen, with per-phase Thevenin impedance referred to the MCC, is:
sag_% ≈ 100 × √3 × I_start × |Z_th| / V_LL
Equivalently, on an approximately reactance-dominated bus, start kVA / short-circuit kVA gives a quick sag estimate. Do the signed complex R+jX calculation for approval because existing load and start PF matter. For step k, include all motors already running plus the starting current of motor k. Eaton’s guide notes that motor inrush creates transformer/conductor voltage dip and that acceptable plant limits vary; this is why a motor-start/coordination study, not an arbitrary delay, signs off the values: https://www.eaton.com/content/dam/eaton/products/design-guides---consultant-audience/canada/cag/eaton-power-distribution-systems-consulting-application-guide-tb08104003e-tab-1-ca08104001e-ca.pdf
the previous motor has valid run/contactor feedback;
its current is below an engineered settled threshold;
MCC bus voltage is above V_RECOVER continuously for T_STABLE;
transformer/load/current headroom permits the next calculated start;
no overload, protection, drive, MCC or process interlock is active.
Use T_START_MAX[i] to detect failure to accelerate and T_GAP_MIN[i] to prevent chatter, but define them from the motor acceleration curve, protection coordination and starts/hour limit. Do not automatically skip a failed motor unless the process hazard review explicitly permits it. Any undervoltage, feedback timeout or trip should inhibit the next start and latch a diagnosable sequence fault.
In IEC 61131-3 terms the transition is roughly:
Next := RunFb[i] AND (Amps[i] <= I_Settled[i]) AND Stable(BusV >= V_Recover, T_Stable) AND CommonPermissives;
PLCopen’s SFC model fits this well: steps represent states and transitions move only when their conditions are true: https://www.plcopen.org/standards/logic/iec-61131-3/faqs/
Rockwell’s published lead/lag motor-group object follows the same pattern—configurable delay plus availability, permissives and interlocks: https://www.rockwellautomation.com/en-se/docs/studio-5000-logix-designer/38-00/contents-ditamap/instruction-set/plantpax-instructions/plls.html
3. If the first motor still sags the bus
Sequencing cannot fix an oversized individual start. Re-study the start method: soft starter, VFD, autotransformer/reactor, a stiffer/dedicated transformer, or process unloading. Siemens explicitly requires sizing the infeed transformer so start dip remains within tolerance: https://cache.industry.siemens.com/dl/files/752/109817752/att_1150156/v1/3RE47_Product_Selection_Guide_rev062323.pdf
I published a small JSON→Graphviz/CSV workflow that can document and review the sequence conditions in Git before anyone translates them into vendor PLC code: https://github.com/AntonsBB/plc-diagram-workflow
Important boundary: ordinary PLC timing must not replace hardwired/safety-rated functions, protection settings, cable/starter sizing or a qualified engineer’s motor-start and short-circuit study.
I would not use a fixed “N seconds per motor” rule. Size the electrical problem first, then let the PLC advance on measured recovery; the timer is a backstop, not the proof that the bus is ready.
1. Calculate each start case
Collect, per motor: FLA, locked-rotor/start current (or the soft-starter/VFD current limit), start power factor, acceleration time, load torque and permitted starts/hour. For the supply collect utility fault level, transformer kVA/%Z/X:R, feeder impedance, existing running load and the minimum ride-through voltage of contactors/drives/process loads.
A useful first screen, with per-phase Thevenin impedance referred to the MCC, is:
sag_% ≈ 100 × √3 × I_start × |Z_th| / V_LLEquivalently, on an approximately reactance-dominated bus, start kVA / short-circuit kVA gives a quick sag estimate. Do the signed complex R+jX calculation for approval because existing load and start PF matter. For step k, include all motors already running plus the starting current of motor k. Eaton’s guide notes that motor inrush creates transformer/conductor voltage dip and that acceptable plant limits vary; this is why a motor-start/coordination study, not an arbitrary delay, signs off the values:
https://www.eaton.com/content/dam/eaton/products/design-guides---consultant-audience/canada/cag/eaton-power-distribution-systems-consulting-application-guide-tb08104003e-tab-1-ca08104001e-ca.pdf
2. Use a feedback-gated sequence
For each motor:
REQUEST → PERMISSIVES_OK → START_CMD → RUN_FEEDBACK → CURRENT_SETTLED → BUS_RECOVERED → NEXTAdvance only when all are true:
V_RECOVERcontinuously forT_STABLE;Use
T_START_MAX[i]to detect failure to accelerate andT_GAP_MIN[i]to prevent chatter, but define them from the motor acceleration curve, protection coordination and starts/hour limit. Do not automatically skip a failed motor unless the process hazard review explicitly permits it. Any undervoltage, feedback timeout or trip should inhibit the next start and latch a diagnosable sequence fault.In IEC 61131-3 terms the transition is roughly:
Next := RunFb[i] AND (Amps[i] <= I_Settled[i]) AND Stable(BusV >= V_Recover, T_Stable) AND CommonPermissives;PLCopen’s SFC model fits this well: steps represent states and transitions move only when their conditions are true:
https://www.plcopen.org/standards/logic/iec-61131-3/faqs/
Rockwell’s published lead/lag motor-group object follows the same pattern—configurable delay plus availability, permissives and interlocks:
https://www.rockwellautomation.com/en-se/docs/studio-5000-logix-designer/38-00/contents-ditamap/instruction-set/plantpax-instructions/plls.html
3. If the first motor still sags the bus
Sequencing cannot fix an oversized individual start. Re-study the start method: soft starter, VFD, autotransformer/reactor, a stiffer/dedicated transformer, or process unloading. Siemens explicitly requires sizing the infeed transformer so start dip remains within tolerance:
https://cache.industry.siemens.com/dl/files/752/109817752/att_1150156/v1/3RE47_Product_Selection_Guide_rev062323.pdf
I published a small JSON→Graphviz/CSV workflow that can document and review the sequence conditions in Git before anyone translates them into vendor PLC code:
https://github.com/AntonsBB/plc-diagram-workflow
Important boundary: ordinary PLC timing must not replace hardwired/safety-rated functions, protection settings, cable/starter sizing or a qualified engineer’s motor-start and short-circuit study.