1. Problem Description: Sinamics G120 Speed Fluctuation at 72 RPM Setpoint
Engineers commissioning a Sinamics G120 frequently observe a speed fluctuation of approximately +/-2 RPM at a low setpoint (for example, 72 RPM commanded, 70-74 RPM measured) when the drive is left in its default V/f linear characteristic. The symptom is not a fault code but a control loop bandwidth limitation that becomes visible at the low end of the speed range, where the motor back-EMF, torque linearity, and slip all become small fractions of their rated values.
Operating at 72 RPM on a standard 4-pole induction motor supplied at 50 Hz corresponds to an output frequency of approximately 2.4 Hz. This is below the practical limit for sensorless vector control on a standard inverter-duty induction motor, and well below the threshold at which a V/f-only drive can deliver stable speed without encoder feedback.
This reference describes the root cause, the parameters that must be set, the hardware that must be present, and the commissioning sequence that closes the gap from +/-2 RPM fluctuation to within the machine's mechanical repeatability.
2. Root Cause Analysis: Why 2.4 Hz Operation Is the Hard Region
Three physical effects dominate speed accuracy below 15 Hz on an induction motor driven by a voltage-source inverter:
| Effect | Mechanism | Magnitude at 2.4 Hz |
|---|---|---|
| Slip sensitivity | Slip frequency f_sl = s * f_sync. A 1% load change at 50 Hz produces 0.5 Hz slip change, but at 2.4 Hz the same torque ripple can produce slip excursions of 20-30% of the operating frequency. | Dominant |
| Stator resistance voltage drop | At low frequency the I * R drop across R_s consumes a large share of V_out. The drive must boost voltage to maintain torque, but the boost is calculated from a model of R_s, which drifts with temperature. | Significant |
| Resolver/encoder quantisation | At 72 RPM a 1024-pulse encoder produces roughly 1.23 pulses per millisecond; with edge counting, the speed measurement noise is comparable to the speed ripple itself. | Often limiting |
The synchronous speed of a 4-pole induction motor at 50 Hz is 1500 RPM. The setpoint of 72 RPM corresponds to a synchronous operating point of 2.4 Hz, which is 4.8% of rated frequency. The drive's current controller and V/f model are tuned for the 5-50 Hz range, so the loop gains that look conservative at 50 Hz become marginal at 2.4 Hz.
Synchronous speed formula: n_sync = 120 * f / p, where p is the number of pole pairs. For p = 2 (4 poles) and f = 2.4 Hz, n_sync = 144 RPM, so a 72 RPM shaft speed implies a slip of (144 - 72) / 144 = 50% - which is already well beyond the typical 3-5% rated slip of a standard induction motor. This single fact tells you that the original mechanical specification (72 RPM shaft without a gearbox) cannot be satisfied by a 4-pole standard induction motor in sensorless vector control.
3. Prerequisites Before Re-Commissioning
Before touching parameters, confirm the following items are correct on the installed drive. Cross-reference the installed firmware against the Siemens Industry Online Support portal for your specific G120 control unit.
- Control Unit identification. The G120 is modular; the Control Unit (CU230P-2, CU240B-2, CU240E-2, CU250S-2) determines which control modes are available. Only the CU250S-2 supports closed-loop speed control with encoder feedback (p1300 = 21). The other units are sensorless only.
- Motor data plate values. p0304 (rated voltage), p0305 (rated current), p0307 (rated power), p0310 (rated frequency), p0311 (rated speed), p0314 (pole pair number), p0320 (no-load voltage for V/f boost), p0335 (motor cooling method).
- STARTER or SINAMICS Startdrive commissioning tool. The on-board trace of the BOP-2 / IOP-2 is too short for slow speed controller tuning. Use STARTER's trace for a 4-8 second capture.
- Encoder mounted and wired. If the application demands sub-percent speed accuracy below 15 Hz, the encoder is mandatory, not optional. Acceptable types: HTL incremental, TTL incremental, SSI absolute. Sin/Cos encoders are supported on the CU250S-2.
- Mechanical decoupling test. A no-load commissioning pass (motor uncoupled from the machine) must be performed before any tuning is attempted under load. Load disturbances are a separate problem from the controller bandwidth.
4. Motor Data Identification and Commissioning Procedure
Auto-commissioning is mandatory; manual entry is acceptable only as a starting point. The static motor data identification (motor ID) routine measures the stator resistance and leakage inductance with the rotor stationary; the rotating motor ID measures the magnetising curve and friction. Reference the SINAMICS G120 with CU250S-2 operating instructions for the parameter list and procedure.
- Enter the nameplate data into p0300 = 1 (induction motor) and the family of p0304 - p0350 parameters.
- Set p1900 = 2 to run a full motor data identification with rotation. The drive will accelerate the motor to its rated speed, perform a no-load measurement, and stop.
- After the measurement, the controller recalculates p0350 (stator resistance), p0354 (rotor time constant), p0356 (stator leakage inductance), and p0360 (magnetising inductance), plus p0630 - p0633 (slip compensation curve).
- Verify p0625 = 0 (motor ambient temperature 20 degC reference) and r0035 (motor temperature) during the next cold start to confirm thermal model stability.
If the operator skipped motor ID and is running on default V/f, the slip compensation model is using rated slip from the nameplate; if the motor has been rewound or the supply voltage is low, the slip compensation will be wrong and the speed will hunt exactly as described.
5. Enabling Closed-Loop Vector Control
| Parameter | Value | Function |
|---|---|---|
| p1300 | 20 (sensorless vector) or 21 (vector with encoder) | Selects the control structure. Sensorless vector (p1300 = 20) is a fallback when no encoder is present. |
| p1302[0..n] | 1 (closed-loop torque control active) or 0 (open-loop V/f) | Must be set in conjunction with p1300 = 20/21. |
| p1500[0] | Source of the torque setpoint, typically 2 (analog) or 6 (fieldbus) | Defines where the higher-level command comes from. |
| p1501[0] | 0 (no additional torque setpoint) | Disable external torque bias when tuning the speed loop. |
| p1517[0] | Acceleration torque scaling | Limits torque setpoint during ramps to prevent current limiter interaction. |
For the stated application (72 RPM, +/-2 RPM ripple, with a 4-pole motor and 50 Hz supply), p1300 = 21 is the only setting that has a chance of meeting the requirement. Sensorless vector (p1300 = 20) at 2.4 Hz on a standard induction motor will not track a load disturbance with +/-3% accuracy; the slip estimator in the model has insufficient signal-to-noise ratio at that speed.
6. Speed Controller Tuning: The P-I Structure
The speed controller is a parallel P-I structure with two gain parameters and an optional setpoint filter. The bandwidth of this loop is the single biggest determinant of disturbance rejection and therefore of speed accuracy under varying load.
| Parameter | Function | Starting Value (4-pole 1.5 kW motor) |
|---|---|---|
| p1460[0] | Speed controller P-gain | 0.3 N*m*s/rad (Sinamics units are N*m*s/rad; this is the equivalent of 0.3 Nm per rad/s of speed error) |
| p1461[0] | Speed controller P-gain scaling | 100% |
| p1462[0] | Speed controller integral time | 100 ms (lower = faster, more oscillation risk) |
| p1470[0] | Speed controller droop (load sharing) | 0 (disable for standalone drive) |
| p1472[0] | Speed controller integral component enable | 1 (enabled) |
| p1503[0] | CI: speed controller setpoint filter time constant | 0 ms initially; increase to 20-50 ms if speed setpoint is stepped |
Use STARTER's online trace on r0060 (motor speed actual) and r0079 (torque setpoint) to capture the response to a step in the speed setpoint. Tune for a critically damped response: a single overshoot of less than 10% with settling in 3-4 cycles. The expected speed loop bandwidth on a 4-pole 1.5 kW motor with encoder is 30-60 rad/s; pushing higher than this on an induction motor will excite torque ripple and mechanical resonances.
When the speed loop is bandwidth-limited, the steady-state speed error epsilon_n = T_load / (K_p * J_eff), where J_eff is the total inertia referred to the motor shaft. Halving the integral time (p1462) and increasing p1460 in proportion doubles the disturbance rejection, but at the cost of acoustic noise and possible mechanical vibration.
7. Slip Compensation and Voltage Boost
Slip compensation in V/f mode is the only mechanism that corrects speed under load without a closed speed loop. It is bypassed once p1300 = 20 or 21 is selected, but it remains the correct starting point for any drive that does not have an encoder.
| Parameter | Function |
|---|---|
| p1335 | Slip compensation scaling (0-300%). 100% applies the rated slip; 0 disables it. |
| p1336 | Slip compensation limit (maximum compensation frequency as a fraction of rated slip). |
| p1310 | Voltage boost at low frequency (continuous, 0-250% of rated voltage at 0 Hz). |
| p1311 | Voltage boost during acceleration. |
| p1312 | Voltage boost during starting. |
The classic V/f slip compensation formula is f_out = f_set + f_slip = f_set + (T_actual / T_rated) * f_slip_rated. In G120 firmware, this is implemented by reading the active current (r0078) and the magnetising current, computing the slip frequency, and adding it to the output frequency. If the motor's rotor time constant tau_r = L_r / R_r is wrong by +/-20% (which is the typical tolerance when motor ID has not been run), the slip compensation will under- or over-compensate, producing a speed error of the same order.
Set p1335 = 100% as the starting value, then increase or decrease in 25% increments based on whether the loaded speed is below or above the no-load speed at the same setpoint.
8. Encoder Feedback: Required Hardware for Sub-Hz Precision
The 4-pole standard induction motor described in the source thread is mechanically incapable of holding 72 RPM to +/-1 RPM without a gearbox and a closed speed loop. The two structural corrections that make the requirement achievable are:
- Add a gearbox. A 20:1 gearbox takes the 1500 RPM motor down to 75 RPM at the output shaft and the motor itself operates at 1440 RPM (48 Hz) - a region where sensorless vector is comfortable. This is the standard machine builder approach for low-speed conveyors, mixers, and extruders.
- Add an encoder and use p1300 = 21. A 1024-pulse HTL encoder on the motor shaft (not on the gearbox output) closes the speed loop inside the drive and is the only way to hit sub-RPM precision at 2.4 Hz on a 4-pole motor.
For the CU250S-2, encoder wiring and parameter settings are documented in the SINAMICS G120 with CU250S-2 operating instructions. The encoder interface accepts 24 V HTL (default) or 5 V TTL (with jumper). The encoder pulses per revolution is set in p0408, and the encoder type in p0400.
| Parameter | Function | Typical value for HTL 1024 ppr |
|---|---|---|
| p0400[0] | Encoder type | 3001 (HTL unipolar 24 V, A/B track, with zero pulse) |
| p0408[0] | Encoder pulses per revolution | 1024 |
| r0061[0] | Actual speed (encoder 1, n_actual) - diagnostic | Read-only |
| p1442 | Speed controller actual speed filter time | 0 ms (no filter initially; increase if encoder noise is visible in r0061) |
If the speed measured at the encoder (r0061) and the speed model in the drive (r0060) disagree by more than 5% at any speed, the encoder wiring or the parameter p0408 is wrong. This is the first thing to check after commissioning.
9. Application Context: Mechanical vs. Control Resolution
The original machine specification calls for 72 RPM at the working shaft. Before commissioning the drive, the engineering question that has to be asked is: "Is 72 RPM a continuous duty point, or a transient?" If the application is a conveyor or a mixer that runs at 72 RPM for 30 minutes, the mechanical specification must include a gearbox, because 72 RPM at the shaft on a 50 Hz 4-pole motor is below the practical operating envelope of any standard inverter-duty induction motor.
Field-proven envelope for an inverter-duty induction motor on a Sinamics G120:
- Sensorless vector (p1300 = 20): stable speed control from approximately 15 Hz to 50 Hz.
- Vector with encoder (p1300 = 21): stable speed control from approximately 1 Hz to 50 Hz, provided the encoder and speed controller are correctly tuned.
- V/f linear (p1300 = 0): not suitable for any application that requires speed accuracy better than +/-5%.
The choice between adding a gearbox or adding an encoder is application-dependent. Adding a gearbox is cheaper and mechanically robust, but it changes the output torque and the inertia reflected back to the motor. Adding an encoder is more expensive and requires shielded cabling, but it preserves the motor and the original mechanical layout.
10. Alternative Platforms: When the G120 Is Not the Right Tool
A Sinamics S120 in servo mode with Sin/Cos encoders can hold 0.7 RPM to within +/-0.1 RPM under varying load. This is achievable because the S120 in servo mode is a permanent-magnet synchronous motor (PMSM) drive with a high-resolution encoder and a position controller; the closed-loop position controller has a bandwidth of several hundred Hz, which is two orders of magnitude above what an induction motor's torque dynamics can support.
If the mechanical specification demands sub-1-RPM accuracy at very low shaft speed, the engineering options are:
- Gearbox plus standard induction motor plus G120 with sensorless vector. Cheapest, suitable for +/-2% speed accuracy.
- Standard induction motor plus G120 with CU250S-2 and HTL encoder plus closed-loop vector. Mid-cost, suitable for +/-0.5% speed accuracy if the encoder resolution and the speed controller bandwidth are matched.
- Permanent-magnet synchronous motor plus S110 or S120 in servo mode plus high-resolution Sin/Cos encoder. Highest cost, highest accuracy, suitable for +/-0.1 RPM and below.
For the application described (72 RPM setpoint, +/-3% observed fluctuation), option 1 or option 2 will close the gap. Option 3 is over-specified and only justifiable if the process itself requires sub-RPM precision. See the SINAMICS G120 product page for hardware configuration and the SINAMICS G120 list manual for the full parameter list and fault code descriptions.
11. Verification Procedure and Acceptance Test
After re-commissioning, the following sequence confirms that the speed loop is correctly tuned:
- Command 0 RPM. Verify the shaft does not move (or moves by less than one encoder count in a 5-second window). If the shaft rotates at any speed, the offset compensation (p0431) is wrong.
- Command 720 RPM (50% of rated). Verify r0060 and r0061 agree to within 1 RPM. Verify r0021 (output frequency) is 24 Hz +/- 0.1 Hz for a 4-pole motor.
- Command 72 RPM. Verify the speed is 72 RPM +/- 1 RPM on the encoder, with no audible hunting. Verify the torque (r0079) is constant and the output current (r0027) is stable.
- Apply a 50% step load. Verify the speed dip is less than 5% and the recovery is in under 1 second. If the dip is larger or the recovery oscillates, increase p1460 in 10% steps and reduce p1462 in 10% steps until the response is critically damped.
- Capture a 10-second STARTER trace of r0060 (speed actual), r0061 (encoder speed), r0079 (torque setpoint), and r0077 (torque actual). Save the trace as part of the commissioning record.
If any of these steps fail, return to Section 4 and re-run the motor data identification; the rotor time constant is the single most important parameter for low-speed accuracy, and a cold motor that has not been run through a thermal cycle can have a rotor resistance that is 25% above its rated value.
12. Troubleshooting Matrix
| Observed Symptom | Likely Root Cause | Corrective Action |
|---|---|---|
| Speed oscillates +/-2 RPM at 72 RPM setpoint, no fault | Drive is in V/f mode; no closed speed loop; motor data not identified | Enable p1300 = 20 (sensorless vector) or 21 (closed-loop with encoder). Re-run motor ID with p1900 = 2. |
| Speed is correct at no-load but drops 5% under load | Slip compensation disabled or rotor time constant wrong | Set p1335 = 100% if running V/f; if running vector, verify p0354 (rotor time constant) was set by motor ID, not entered manually. |
| Speed is stable but offset by 5 RPM from setpoint | Encoder offset (p0431) wrong; or rated speed in p0311 is wrong | Re-enter p0311 from the nameplate. If using an encoder, perform encoder adjustment (p1990 = 1). |
| Speed setpoint is correct but output frequency is at limit (5 Hz minimum) | Drive is in torque limit; load is too high for the motor | Verify r0027 (motor current) is below rated. Check gearbox ratio and mechanical alignment. |
| Drive faults with F07901 (motor speed too high) at start | Encoder direction is reversed; or encoder is on the gearbox output and not the motor | Swap A and B encoder tracks; or change p0410 to invert encoder direction. |
| Drive faults with F07902 (motor speed too low) at start | Encoder is on the gearbox output and the drive is expecting motor speed | Move encoder to motor shaft, or scale p0408 by the gearbox ratio and re-tune the speed controller. |
| Speed is stable for 30 seconds, then drifts up by 2 RPM | Thermal model: rotor resistance is drifting with temperature | Enable p0612 (motor thermal model use) and p0625 (ambient temperature). Verify r0035 reads a realistic temperature. |
For the full fault code list and remediation, refer to the SINAMICS G120 List Manual on the Siemens Industry Online Support portal. The most common low-speed fault on the G120 is F07901 / F07902, both encoder-related; the first fix to try is the encoder wiring and p0410, not the controller parameters.
What is the minimum stable operating speed of a Sinamics G120 in sensorless vector control?
Field experience is approximately 15 Hz (450 RPM on a 4-pole motor at 50 Hz). Below this, the slip estimator in the speed model has insufficient signal-to-noise ratio, and speed accuracy degrades. For sub-15-Hz operation, use the CU250S-2 Control Unit with an encoder and p1300 = 21.
Why is my Sinamics G120 speed fluctuating between 70 and 74 RPM at a 72 RPM setpoint?
Either the drive is in V/f mode (p1300 = 0) and the motor data has not been identified, or the drive is in sensorless vector (p1300 = 20) but the operating speed is below the practical 15 Hz limit. Re-run motor data identification with p1900 = 2 and either enable encoder feedback (p1300 = 21) or change the mechanical design to operate the motor above 15 Hz by adding a gearbox.
What is the difference between p1300 = 20 and p1300 = 21 on the G120?
p1300 = 20 is sensorless vector control; the speed estimator in the drive infers the shaft speed from the motor model. p1300 = 21 is closed-loop vector control with a speed encoder; the drive uses the encoder signal directly. p1300 = 21 requires a CU250S-2 Control Unit and a wired encoder; it is the only setting that delivers sub-percent speed accuracy below 15 Hz.
How do I run motor data identification on a Sinamics G120?
Enter the nameplate data into p0304 - p0314, then set p1900 = 2 for a rotating identification or p1900 = 1 for a stationary identification. Issue an ON command. The drive will accelerate the motor to rated speed, measure the magnetising curve and the rotor time constant, and write the results into p0350, p0354, p0356, and p0360. Always decouple the motor from the machine when running p1900 = 2.
Can the G120 reach 0.7 RPM accuracy like the S120 in servo mode?
No. The S120 in servo mode uses a permanent-magnet synchronous motor, a high-resolution Sin/Cos encoder, and a position controller with several-hundred-Hz bandwidth. The G120 in vector control is an induction motor drive with a speed controller in the 30-60 rad/s range. The G120 can deliver approximately +/-0.5% speed accuracy with a CU250S-2 and an encoder; for sub-RPM precision, an S110 or S120 is the correct platform.