Resolving 840D sl FRF Amplitude Fluctuation Error During Tuning

David Krause16 min read
Motion ControlSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Resolving Siemens 840D sl FRF Amplitude Fluctuation Error During Axis Tuning

The commissioning message "THE AMPLITUDE OF THE MEASURED FRF CONTAINS EXCESSIVE FLUCTUATIONS" is generated by the automatic circularity test (Frequenzgangs-/FRF routine) inside SINUMERIK 840D sl when the controller cannot derive a stable Frequency Response Function from the active measuring system. The tuning cycle aborts before the closed-loop gain (Kv), feedforward, and acceleration pre-control values are written back to the drive, leaving the axis with factory-default dynamics. This article documents the engineering analysis, diagnostic flow, and corrective action for this failure on a retrofit machine that uses a Heidenhain LS 187 linear scale as the second (indirect) measuring system on a clutch-coupled axis with large backlash.

Problem Overview

The SINUMERIK 840D sl circularity test performs a controlled sinusoidal motion on each axis to identify the mechanical transmission behavior (compliance, friction, natural modes) and to compute the optimum position-controller gain and feedforward coefficients. The test relies on the measuring system that is currently active in MD30220 $MA_CTRLOUT_SEGMENT_NR / MD30230 $MA_ENC_INPUT_NR. When the measured position response contains excessive noise or ripple relative to the setpoint, the FRF amplitude vector violates the abort threshold defined in MD32920 $MA_DYN_MATCH_FILTER and the cycle raises the amplitude-fluctuation alarm and ends tuning.

On dual measuring-system axes, this fault frequently masks a deeper mechanical or configuration problem: the secondary (linear-scale) actual value does not agree with the motor-encoder actual value during the dynamic maneuver, the controller sees a synthetic following error that is not actually present in the mechanics, and the FRF estimator rejects the result as invalid. Because MDA/AUTO and JOG still appear to position in some cases, the issue is often misclassified as a tuning software defect rather than a measuring-system or mechanics defect.

Typical System Configuration

Affected installations share a common mechanical and electrical profile. The configuration below is derived from the field failure under analysis and is representative of large-machine retrofits:

Subsystem Component Notes
NCU SINUMERIK 840D sl (NCU 710 / 720 / 730) FW ≥ 4.5 SP2 recommended
Drive line-up SINAMICS S120, Active Line Module + Motor Module Booksize or chassis format
Servomotor SIMOTICS 1FK6 (1FK7060 / 1FK7063) or 1FK7 Resolver or sin/cos incremental encoder fitted
Direct measuring system (MS1) Motor-mounted incremental encoder (e.g., ERN 1387, AM32, AM512) 2048–32 768 lines/rev
Indirect measuring system (MS2) Heidenhain LS 187 incremental linear scale Signal period 20 µm, single reference mark
Sensor module SMC30 (6SL3055-0AA00-5CA2) 1 Vpp input, on DRIVE-CLiQ port X521 of the Motor Module
Mechanical coupling Pneumatic / hydraulic clutch per axis Open when de-energized, engaged only when axis is selected
Mechanical backlash 1 – 3 mm static backlash at the gear or ballscrew stage Typical of large mill/table retrofits
Machine Union BFT 130 horizontal boring mill (or equivalent) Retrofit from DC/SIMOREG to 840D sl

The Union BFT 130 is a heavy horizontal boring machine with mechanically decoupled axes. Each linear axis is engaged by a clutch; when the axis is not selected, the drive can spin freely without moving the load. During commissioning the operator must command the clutch output to close before any motion takes place.

Symptom Description

The defect presents in three different operating modes, all of which point to the same underlying fault:

  1. JOG with MS2 active: After the operator selects the linear scale via PLC axis-selection logic (or DB31, ...DBX1.5 / 1.6 measuring-system switch in the user interface), the axis creeps at low velocity without any traversing key pressed. The commanded velocity is approximately the hold-loop drift value and the position actual value advances continuously. This is a sign that the position controller is operating against a non-zero setpoint residual caused by the measuring-system switch-over.
  2. MDA / AUTO with MS2 active: The axis reaches the programmed target but oscillates around it. The torque actual value (monitored in the HMI Service display or in DB31, ...DBW70) shows a stable oscillation of approximately ±2 to ±3 Nm peak-to-peak at low frequency. The position does not converge to the exact-stop window defined by MD36000 $MA_STOP_LIMIT_FINE / MD36010 $MA_STOP_LIMIT_COARSE.
  3. Automatic circularity test: The tuning routine raises "THE AMPLITUDE OF THE MEASURED FRF CONTAINS EXCESSIVE FLUCTUATIONS" and aborts. The default Kv factor and feedforward values are not updated and the drive reverts to safe defaults.

When the same axis is operated on the first measuring system only (motor encoder), the position loop closes properly, the torque settles to a static holding value (≈ +2 Nm), the standstill window is reached and the FRF test succeeds. This proves the drive, motor, motor-encoder, and closed-loop cabling are healthy and that the fault is localized to the second measuring-system path or to the mechanical coupling between motor and load.

Root Cause Analysis

The combination of (a) dual measuring system, (b) large static backlash, and (c) a clutch that decouples motor from load creates the conditions for the FRF error. Each of the three contributing factors is analysed below; in most field cases, two of the three are present and must be corrected before the FRF test will pass.

Contributing Factor 1 – Measuring-System Mismatch

If the linear-scale actual value disagrees with the motor-encoder actual value, the position controller interprets the difference as following error. After a motion command, the controller continues to integrate position error and outputs torque even when the load has mechanically reached the target. The result is a torque ripple of ±2 to ±3 Nm and a slow drift visible in JOG. The mismatch is typically caused by:

  • Incorrect linear-scale resolution: MD31010 $MA_ENC_GRID_POINT_DIST[1] must be set to 0.020 mm (20 µm) for the Heidenhain LS 187. A common mistake is to enter 0.00002 instead of 0.020.
  • Missing or inverted reference: MD34200 $MA_ENC_REFP_MODE[1] must allow referencing on a single-reference-mark scale. MD34310 $MA_ENC_MARKER_INC[1] and MD34320 $MA_ENC_INVERS[1] must match the wiring direction (X521 pin 1/2 vs 3/4).
  • Mechanical coupling error: MD31050 $MA_DRIVE_AX_RATIO_DENOM[1] / MD31060 $MA_DRIVE_AX_RATIO_NUMERA[1] and MD31070 $MA_DRIVE_ENC_RATIO_DENOM[1] / MD31080 $MA_DRIVE_ENC_RATIO_NUMERA[1] describe the load-side gear ratio. A sign error here creates a permanent offset between MS1 and MS2 that grows with travel.
  • Wrong measuring-circuit assignment: MD30240 $MA_ENC_TYPE[1] must be 1 (incremental encoder), MD30244 $MA_ENC_MEAS_TYPE[1] must indicate direct load measurement, and MD31000 $MA_ENC_IS_LINEAR[1] must be 1.

Contributing Factor 2 – Large Static Backlash

When the mechanical backlash at the gear, rack, or ballscrew stage is large (>1 mm), the position controller sees two different actual values depending on the direction of the previous motion. The backlash-compensation function (backlash/LEC) in 840D sl is implemented via MD32450 $MA_BACKLASH and the direction-dependent compensation is performed through the SSC / LEC table. If the compensation is missing, undersized, or in the wrong direction, every direction reversal produces a step in the position error and the torque ripple repeats. The FRF estimator sees this as noise on the actual value and aborts.

For axes with >1 mm backlash, the standard MD32450 $MA_BACKLASH value must be measured during commissioning (use the HMI Set Backlash routine under Commissioning → Compensations) and the MD32452 $MA_BACKLASH_MODE must be set to the value defined by the actual mechanics.

Contributing Factor 3 – Clutch Engagement

Because the clutch is open when the axis is de-selected, the motor encoder counts motion that is not transmitted to the load. When the measuring-system switch-over (MS1 → MS2) is performed while the clutch is not yet closed, or if the PLC interface DB31, ...DBX24.0 ... 24.7 (clutch state) reports an inconsistent state, the controller sees the load in a different position than the motor reports. The FRF routine will fail because the measured mechanical transfer function is not consistent. The clutch must be commanded closed and the controller must verify the engagement signal before any motion is initiated on MS2.

Service Display Diagnostics

Before changing any machine data, capture the dynamic actual-value display with both measuring systems active. The procedure below must be performed in MDA / JOG with the axis on MS2 and the clutch engaged:

  1. Select operating area Commissioning → Service display on the HMI.
  2. Open the axis-specific service display for the affected axis (e.g., AX1).
  3. Read and record:
    • Position actual value MS1 (motor encoder)
    • Position actual value MS2 (linear scale)
    • Following error actual value
    • Position-controller output / torque setpoint
    • Position setpoint
  4. Command a 1 mm incremental JOG motion with the traversing keys.
  5. Read the same values during the motion and 2 s after the standstill.
  6. Repeat the motion in the opposite direction.

The two MS actual values must be identical to within the resolution of the linear scale (≤ 1 µm). If a difference is visible after standstill, the load-side configuration in MD31010 ... MD31080 is wrong. If the difference depends on direction, backlash compensation is missing. If the torque oscillates between direction reversals even when both MS values agree, the issue is mechanical (gear play, defective coupling, clutch slippage).

Machine Data Verification

The following MDs must be checked against the documented mechanical design values. They are the minimum data set for a dual measuring-system axis on an 840D sl. None of the values below should be left at commissioning default.

Machine data Index [0] = MS1 (motor) Index [1] = MS2 (linear scale) Field value for LS 187
MD30200 $MA_NUM_ENCS global 2
MD30230 $MA_ENC_INPUT_NR 1 2 MS1 = 1, MS2 = 2
MD30240 $MA_ENC_TYPE 1 (incremental) 1 (incremental) 1
MD31000 $MA_ENC_IS_LINEAR 0 1 1 for MS2
MD31010 $MA_ENC_GRID_POINT_DIST encoder-dependent 0.020 0.020 mm (LS 187)
MD31020 $MA_ENC_RESOL 2048…32768 — Per motor data sheet
MD31030 $MA_LEADSCREW_PITCH global Per ballscrew (mm/rev)
MD31040 $MA_ENC_IS_DIRECT 1 1 Both direct on motor/load
MD31050 $MA_DRIVE_AX_RATIO_DENOM gear ratio Per mechanics
MD31060 $MA_DRIVE_AX_RATIO_NUMERA gear ratio Per mechanics (signed)
MD31070 $MA_DRIVE_ENC_RATIO_DENOM encoder ratio Per mechanics
MD31080 $MA_DRIVE_ENC_RATIO_NUMERA encoder ratio Per mechanics (signed)
MD32110 $MA_ENC_FEEDBACK_POL -1 or +1 -1 or +1 Sign must match direction
MD34200 $MA_ENC_REFP_MODE 1 1 Reference mode per scale
MD34320 $MA_ENC_INVERS 0 0 0/1 per wiring direction

The values for MD31010 $MA_ENC_GRID_POINT_DIST[1] must be entered as 0.020 for the LS 187 signal period. A common field defect is to enter the period as a multiple of the µm value (e.g., 0.000020), which makes the position controller read the scale as 1000 times finer than it actually is; the result is a sustained following error and torque drift immediately after MS2 is activated.

Dynamic Response and Closed-Loop Data

MD Description Typical value at first commissioning
MD32200 $MA_POSCTRL_GAIN Kv factor (1/min) 1.0 (start), tune later
MD32210 $MA_POSCTRL_INTEGRATOR_TIME Integral action time (s) 0.0 (disabled until FRF test passes)
MD32450 $MA_BACKLASH Backlash (mm) measured, do not leave at 0
MD32452 $MA_BACKLASH_MODE Backlash compensation mode per SSC / LEC table
MD36000 $MA_STOP_LIMIT_FINE Exact-stop fine (mm) 0.040
MD36010 $MA_STOP_LIMIT_COARSE Exact-stop coarse (mm) 0.200
MD36030 $MA_STANDSTILL_POS_TOL Standstill tolerance (mm) 0.200
MD36200 $MA_AX_VELO_LIMIT Axis velocity limit (mm/min) per machine data sheet
MD36400 $MA_CONTOUR_TOL Contour tolerance (mm) 1.000 (relaxed for first test)
MD32900 $MA_DYN_MATCH_ENABLE Dynamic response adaptation 1 (FRF allowed)
MD32920 $MA_DYN_MATCH_FILTER FRF amplitude filter use Siemens default, do not lower

The values above are starting points. They must be tuned once the FRF test passes successfully. Lowering MD32920 $MA_DYN_MATCH_FILTER artificially to suppress the FRF alarm is not an acceptable workaround; it masks the underlying mechanical or wiring defect.

Heidenhain LS 187 Wiring and Parameters

The LS 187 incremental linear scale is a single-reference-mark exposed-scale with a 20 µm signal period. The head outputs differential 1 Vpp signals on pins A+ / A-, B+ / B-, and a reference pulse on R+ / R-. The scale is wired to the SINAMICS SMC30 sensor module (article number 6SL3055-0AA00-5CA2) on the Motor Module's DRIVE-CLiQ port X521.

SMC30 terminal X521 Signal Heidenhain LS 187 wire colour
1 A+ green
2 A- yellow
3 B+ blue
4 B- red
5 R+ white
6 R- brown
7 +5 V red (supply)
8 GND blue (supply)

Wire colour assignments vary by Heidenhain cable generation; refer to the LS 187 Mounting Instructions for the specific variant. Common field defects are reversed A/B (causing inverted count direction), missed shielding (causing noise on the actual value), and 0 V reference shared with motor-cable ground (causing ground loops).

The SMC30 must be parameterised through the SINAMICS commissioning software (STARTER / Startdrive) under Encoder configuration:

  • Encoder type: 1 Vpp incremental
  • Line number / signal period: 20 000 counts per signal period (1 Vpp interpolation)
  • Reference mark: One (1) — not distance-coded
  • Fine resolution: x 4096 via SINAMICS internal interpolation

Backlash and LEC Compensation

For an axis with ≥1 mm static backlash, the compensation must be commissioned before the FRF test is run. The procedure is:

  1. Move the axis to a defined home position in JOG at low feed (≤ 1000 mm/min).
  2. Close the clutch and command the axis to the same position from the positive direction and from the negative direction.
  3. Read the MS2 actual value at standstill after each approach.
  4. The arithmetic difference between the two readings is the static backlash. Enter the value into MD32450 $MA_BACKLASH in mm.
  5. Verify that the LEC/SSC table covers the full travel range with sub-tables for any spindle-position-dependent correction.
  6. Repeat the JOG direction reversal and confirm that the position actual value of MS2 is now direction-independent within the resolution of the scale.
Note: Backlash compensation is only correct if the clutch is fully engaged during the measurement. A slipping clutch produces an inflated backlash value that will not stabilise the FRF test.

Clutch and Mechanical Coupling Checks

Before running the FRF test on MS2, confirm that:

  1. The clutch signal DB31, ...DBX24.0 (clutch closed) and DB31, ...DBX24.1 (clutch open) are mutually exclusive.
  2. The clutch pressure is at the rated value — pneumatic clutches in particular lose torque capacity with age and pressure drop.
  3. The clutch engagement is verified at the PLC by torque-feedback check: command a low setpoint torque and confirm that the load physically moves.
  4. The motion guard (e.g., hardware limit switch on the clutch output) is correctly wired and acknowledged by the NC.

If the clutch slips or engages late, the FRF estimator sees a system with non-stationary gain; the amplitude fluctuation alarm is the immediate consequence.

Step-by-Step Resolution Procedure

The corrective procedure must be executed in the order shown; skipping steps will leave the FRF test inconclusive.

  1. Confirm the hardware is healthy. With the axis on MS1 (motor encoder only), run a closed-loop JOG in both directions. The torque actual value must settle to a static value and the position actual value must equal the commanded position. If not, fix the drive / motor / encoder cabling first.
  2. Verify the linear-scale wiring. Move the axis 10 mm in JOG on MS1 and confirm that the MS2 service display value follows the MS1 value exactly (within ±1 µm). If MS2 jumps by ±20 µm or remains constant, the scale wiring or MD31010 is wrong.
  3. Verify the linear-scale reference. Run the reference-point approach in JOG. The axis must decelerate to the reference marker and stop. If the axis passes the marker without decelerating, MD34200 $MA_ENC_REFP_MODE[1] or MD34310 $MA_ENC_MARKER_INC[1] is wrong.
  4. Measure and enter backlash. Use the procedure in the section Backlash and LEC Compensation to populate MD32450 $MA_BACKLASH.
  5. Confirm the clutch engagement. In the Service display, monitor the clutch signal during a JOG motion on MS2. The motion must only be commanded after the clutch-close signal is true.
  6. Run the FRF test with MS2 only. In the HMI, select Commissioning → Tuning → Circularity Test, choose the linear scale as the active measuring system, and start the test. The cycle must complete without raising the amplitude-fluctuation alarm.
  7. Accept the values and save the NC data. When the test passes, the Kv factor and feedforward values are written to the drive automatically. Save the NC data with Commissioning → Machine Data → Save and archive the series-commissioning file.

Verification

After the corrective procedure the following checks must all pass before the axis is released for production:

  1. The FRF tuning routine completes on MS2 without raising the FRF amplitude fluctuation alarm.
  2. A 100 mm incremental JOG motion on MS2 reaches the exact-stop fine window within the time defined in MD36020 $MA_POSITIONING_TIME.
  3. The torque actual value at standstill is a flat trace (no oscillation) on the service display.
  4. A multi-block MDA program with multiple direction reversals maintains the contour tolerance defined in MD36400 $MA_CONTOUR_TOL.
  5. The reference-point approach on MS2 works repeatedly without re-initialising the encoder.

Related Field Cautions

  • Do not switch measuring systems during the FRF test. The test assumes a stationary active system and the abort threshold is sensitive to MS switch-over transients.
  • Do not lower MD32920 $MA_DYN_MATCH_FILTER or raise MD36400 $MA_CONTOUR_TOL to suppress the alarm without fixing the underlying defect; the alarm is a hard constraint on the closed-loop stability and is raised for a reason.
  • If the axis uses an absolute scale (EnDat), reference is held through power off; the FRF test still requires the clutch and backlash compensation to be correct.
  • If the machine uses a linear torque motor on the linear scale (no clutch), the same MDs apply but the backlash compensation is replaced by friction compensation through MD32490 $MA_FRICT_COMP_MODE.
  • For 1FK6 / 1FK7 motors with DRIVE-CLiQ encoders, the MS1 path is digital; in that case the MS2 wiring must still be verified through the SMC30 service display.

Documentation Pointers

The detailed commissioning procedure for the FRF test and dual measuring-system axes is documented in the official Siemens references below. Use them as the authoritative source for the MD descriptions and the operator interface.

FAQ

Why does the FRF amplitude fluctuation alarm appear only with the second measuring system?

The circularity test computes the FRF from the active measuring system. If the linear scale actual value disagrees with the motor encoder due to wrong MD31010 $MA_ENC_GRID_POINT_DIST[1], missing backlash compensation in MD32450 $MA_BACKLASH, or a slipping clutch, the measured transfer function is incoherent and the cycle aborts. With MS1 only the controller sees the motor encoder and the path is consistent.

Can the FRF test be passed on MS1 alone?

Yes — running the circularity test on the motor encoder alone is a legitimate diagnostic step. It confirms that the drive, motor, and primary encoder are healthy. Final production tuning must still be performed on MS2 because the linear scale is the position-control actual value used during machining.

What service display screens help diagnose a dual-encoder mismatch?

Open Commissioning → Service display and read MS1 actual value, MS2 actual value, following error, position setpoint and torque setpoint simultaneously on the affected axis. Compare MS1 and MS2 during and after a 1 mm JOG motion in both directions; any permanent offset or direction-dependent step indicates a configuration or backlash defect.

How is the Heidenhain LS 187 wired to the SINAMICS SMC30?

The differential 1 Vpp outputs (A+/A-, B+/B-, R+/R-) and the 5 V supply are connected to SMC30 terminal block X521. Wire colours and pin assignments vary by LS 187 cable generation; refer to the Heidenhain LS 187 mounting instructions and verify against the SMC30 pin map in the SINAMICS S120 Function Manual before energising.

Does large backlash require LEC compensation before FRF tuning?

Yes. For axes with static backlash ≥1 mm, MD32450 $MA_BACKLASH must be measured and entered, and any direction- or position-dependent component must be defined in the SSC / LEC table before the FRF test is started. Without this compensation the position controller sees a different actual value on every direction reversal and the FRF estimator rejects the result.

Back to blog