Commissioning SINAMICS S120 EPOS Without STARTER via BOP20

David Krause14 min read
SiemensTutorial / How-toVFD / Drives
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

Overview of EPOS on SINAMICS S120

The SINAMICS S120 drive platform supports an integrated EPOS (Easy Positioning) basic positioner that turns a servo drive into a self-contained point-to-point positioning axis without an external motion controller. EPOS runs inside the Control Unit (CU320-2 or CU310-2) and exposes a standardized parameter set (p26xx, p25xx, p25xx) for traversing blocks, jog, homing, and direct setpoint input.

Standard commissioning relies on the STARTER / Startdrive tool, which presents the function modules graphically. When STARTER is unavailable (commissioning laptops restricted, drive already in production, headless cabinet, or scripted batch rollout), the BOP20 (Basic Operator Panel 20) or an uploadable script can perform the same parameter changes through the operator panel keypad or through parameter write services. The procedure below achieves a closed-loop servo drive with the basic positioner enabled using only the BOP20 and the parameter list manual.

Engineering note: Commissioning EPOS "by hand" is feasible but slow. Plan 30–60 minutes per axis for first-time setup, plus 10 minutes per additional axis when reusing the same script. STARTER is still recommended for trace recording and controller optimization.

Prerequisites and Hardware Requirements

Before touching the BOP20 keypad, verify the following:

  • Control Unit: SINAMICS S120 with CU310-2 PN/DP or CU320-2. EPOS is firmware-activated on these units; on CU310-2 the function module must be enabled (see r0108 below).
  • Power Module: Single-axis AC drive (e.g., PM340 blocksize or Smart Line Module + Motor Module) sized to the motor continuous current.
  • Motor: Siemens Drive-CLiQ-equipped servo motor (1FK7, 1FT7, 1PH8, SIMOTICS S-1FK2/S-1FT2). Drive-CLiQ delivers automatic electronic nameplate detection; without Drive-CLiQ you must manually enter motor parameters from p0300…p035x.
  • Encoder: Either built-in Drive-CLiQ encoder, or an SMC/SME module plus an external encoder on the motor.
  • BOP20: The 6-button panel (order number 6SL3055-0AA00-4BA0). The older BOP (without the trailing "20") does not support the navigation needed for p0108 indexing.
  • Firmware: SINAMICS S120 firmware V4.x or V5.x. The r0108 function module framework is consistent across both lines.
  • Reference documentation: Current List Manual (LH1) and Commissioning Manual (IH1) for the firmware version on the drive. The SINAMICS S120 Commissioning Manual IH1_112009 shows the BOP20 quick-commissioning workflow with EPOS as a target application.

Understanding the Function Module Architecture (p0108 / r0108)

Function modules on the SINAMICS S120 are activated through the bit-coded parameter p0108. Two indices exist:

  • p0108[0] – Currently active function module configuration (read-only equivalent is r0108).
  • p0108[1] – Requested / required configuration. Writing here triggers a reconfiguration cycle on the next ramp-up / reset.

The status word r0108 reports the active bits:

Bit Function Module Source Reference
r0108.0 Closed-loop speed/torque control List Manual, function diagrams 4xxx
r0108.1 Servo control mode List Manual
r0108.2 Extended speed setpoint channel List Manual
r0108.3 Basic positioner (EPOS) field report, List Manual
r0108.4 Extended setpoint channel field report, List Manual
r0108.5+ Technology controller, free blocks, synchronism (firmware-dependent) List Manual, firmware-specific function diagrams

For EPOS on a Drive-CLiQ servo, the working value observed in field commissioning is:

p0108[1] = 0x011C (hex) = 0001 0001 1100 (binary)

Decoded: bits 2, 3, 4, and 8 set. Bit 3 enables the basic positioner, bit 4 enables the extended setpoint channel needed by EPOS setpoint sources, bit 8 enables additional EPOS features (positioning / modulo / relative moves) depending on firmware. This matches the field-tested p108 index 1 = 11C noted in the field report. Because the source documents only r0108.3 and r0108.4 as the user-visible indicators, the precise meaning of every bit should be cross-checked against the function diagram in the List Manual for the exact firmware build loaded.

Encoding reminder: When entering 11C on the BOP20 you must select hexadecimal input. By default the BOP accepts decimal; switch to hex by pressing the Fn key on the parameter screen, or confirm the input mode icon at the bottom of the BOP display before pressing P (set).

Drive-CLiQ Motor Auto-Identification Sequence

Before touching EPOS parameters, complete motor commissioning. Drive-CLiQ motors stream their electronic nameplate into the drive at power-up; you only need to confirm and run identification.

  1. Wire the motor through Drive-CLiQ to the corresponding Motor Module port (X202 on PM340 blocksize, X200 on booksize).
  2. Power up the Control Unit. The BOP20 first shows the firmware version, then the drive name.
  3. Navigate to p0300 (motor code number for Siemens motors). If Drive-CLiQ detected the motor, p0300 is pre-filled with a numeric code (e.g., 1FK7060-2AF71). Confirm by pressing P.
  4. Navigate to p0301 (motor code number / selection list entry). Leave at 0 for Drive-CLiQ auto.
  5. Navigate to p0400 (encoder type) and verify the encoder SSID is read from Drive-CLiQ. For absolute encoders ensure p0407[0] = 12 or the value listed for your motor's encoder (24-bit singleturn, 12-bit multiturn combination is typical for 1FK7).
  6. Execute p1900 = 1 (motor data identification routine). The drive must be in commissioning mode; ON/OFF1 may need to be held off. The motor will move briefly during this routine; ensure the mechanical axis is free to rotate a few revolutions or inhibit mechanical movement per application rules.
  7. Run p1910 = 1 (motor data identification – extended) for saturation characteristic capture if your application requires high torque accuracy.
  8. Save parameters with p0977 = 1 (start RAM-to-ROM copy) or hold the Fn + P buttons on the BOP20 to save.

Control Structure Selection: Servo Mode and Closed-Loop Speed Control

EPOS sits on top of closed-loop speed control, which sits on top of the current controller. Confirm the structure before activating the positioner:

  • p0099 = 1 – Reserved for firmware cross-check; not strictly required but ensures all dependent parameters are visible.
  • p1300 = 21 – Closed-loop speed control with torque limiting (servo mode). Other values (20, 22, 23) are valid for specific servo tuning topologies; 21 is the default for EPOS.
  • p1500[0] = 0 – Setpoint source for speed controller is the analog / fieldbus input. For EPOS, switch to p1500[0] = 0 with the speed setpoint coming through the EPOS ramp generator.
  • p1501[0] = 0 – Sign-of-life from the positioner.
  • p1503[0] = r1114 – Speed setpoint source after ramp-function generator.

Verify the speed controller tuning: p1460 (P-gain), p1462 (integral time). With Drive-CLiQ motors, the auto-tuned defaults from p1900 are normally adequate; capture the closed-loop response with STARTER if oscillation is observed, since BOP20 cannot run a trace.

BOP20 Navigation and Parameter Entry

The BOP20 has six keys: ON (green), OFF (red), Fn (function / arrow keys via jog dial), P (set/confirm), UP arrow, DOWN arrow. Parameters are addressed numerically. Indexing (subscripts in square brackets) is reached by pressing Fn to toggle the index digit and using the UP/DOWN arrows.

  1. Hold P for 3 seconds to enter the parameter entry screen. The display flashes the parameter number.
  2. Use UP/DOWN to change each digit; use Fn to move the cursor.
  3. Press P to confirm.
  4. To enter an indexed value, press P, advance to the index field (right of the parameter number, in square brackets), edit, press P, then edit the value, press P.
  5. To enter a hex value, when the value field is highlighted, press Fn until the input mode shows "HEX", then enter the value.
  6. A blinking "P" indicates the parameter value has been written to RAM. To copy RAM to ROM (non-volatile), set p0977 = 1 or hold Fn + P until the BOP shows the save progress.
Time investment: Each parameter entry (number + index + value) takes ~30–60 seconds by hand. A 60-parameter commissioning sequence is roughly 30 minutes. Plan accordingly.

Step-by-Step EPOS Commissioning via BOP20

The sequence below activates the basic positioner on a default SINAMICS S120 with a Drive-CLiQ servo motor. Adjust thresholds for your specific axis limits.

  1. Save current state (optional): If the drive was previously configured, perform a factory reset via p0970 = 1 and confirm with P. Drive reboots to factory defaults.
  2. Configure drive object: p0108[1] = 11C (hex). The drive queues the new function module configuration.
  3. Trigger ramp-up: Cycle 24 V control electronics OFF/ON, or set p0009 = 0 (drive commissioning parameter filter to "ready") then execute p0971 = 1 to start the parameterization mode. After p0971 completes, the drive reboots.
  4. Verify function module activation: Read r0108. Bits 2, 3, 4, and 8 should all read 1. If bits are missing, firmware does not include EPOS (license check on certain variants) – contact Siemens with the device serial number.
  5. Enable extended setpoint channel: p0150 = 0 (no selection); p1100 = 0 for speed setpoint from EPOS ramp generator.
  6. Configure EPOS enable: p2656 = 1 – This is the master enable that powers the basic positioner software module. Without p2656 the positioner parameter set is read-only and no traversing block can be started.
  7. Select EPOS operating mode source: p2650 = 0 (setpoint input via parameter / fieldbus) or p2650 = 1 (traversing blocks). For automated indexing applications, leave at 1 and define a block.
  8. Set mechanics: Load (LU) per revolution = p2920 (load revolutions); motor revolutions per LU = p2921. For example, a ballscrew with 10 mm pitch and a 5:1 gearbox, with 1 LU = 1 µm: p2920 = 10, p2921 = 50000.
  9. Configure position limits: p2570 (positive SW limit), p2571 (negative SW limit). Defaults are ±1e15 LU – restrict to your physical axis envelope.
  10. Configure velocity / acceleration: p2572 (max velocity), p2573 (max acceleration), p2574 (max deceleration), p2575 (max jerk). Units are LU/s, LU/s², LU/s³.
  11. Configure jog mode: p2585 (JOG velocity 1), p2586 (JOG velocity 2), p2587 (JOG acceleration), p2588 (JOG jerk).
  12. Enable OFF3 / OFF2 behavior: p2657 = 1 (activate the positioner; absence causes alarm A07456). Set the controller enable at r0898.0 = 1 by issuing ON via BOP20.
  13. Save to ROM: p0977 = 1. The drive copies RAM to ROM, indicated by the BOP showing a clock icon.

Script-Based Commissioning for Repeatable Deployment

Once the parameter set is known, transfer it via script instead of keystroke-by-keystroke entry. Two routes are common in field deployment:

Route A – STARTER / Startdrive Export to Script

Even without STARTER on the commissioning laptop, you can have an offline engineering PC export the parameter list. Open STARTER, configure one drive as a template, choose Target system → Load to PG is not needed; instead use Project → Export → Parameter list to generate a CSV of every parameter and value. The CSV can be reformatted into a USS / PROFIdrive parameter-write script.

Route B – Direct Parameter Write via S7 / HMI / PLC

If a Siemens S7-1500 / S7-1200 controller is on the line, push the parameter set through SINAMICS parameter request telegram (PKE + IND + PWE) using a standard FB (e.g., FB286 "SINA_PARA") in TIA Portal. The FB reads or writes one parameter per call and is suitable for both commissioning and runtime.

Sample ST code fragment for a single parameter write (pseudo-equivalent for the CU310-2 PN/DP and S7-1200/S7-1500):

// Trigger a write of p2656 = 1 (EPOS enable)
#req := TRUE;
#paraNo := 2656;   // p2656
#axisNo := 1;      // drive axis
// Some FBs use the parameter number; others use (DO * 1000 + PN).
// Consult FB286 documentation for exact mapping.

For a complete sequence, call the FB in a loop until all 60+ parameters are written, then trigger p0977 = 1 (Save to ROM) as the final write.

Route C – BOP20 Saved Script File via MMC / SD Card

On CU320-2 with firmware V5.x, parameter sets can be exported to the SD card and reloaded via BOP20. The BOP menu structure under Drive → Up/download (where available on later firmware) provides bulk load. On older firmware, this route is not supported, so plan for Route A or B.

EPOS Enable Signals and Operating Mode Selection

The complete enable chain for a positioning move through EPOS on a default S120 with CU310-2 PN/DP is:

Step Source Target Action
1 24 V / Control Unit ready r0899.0 Logic power OK
2 Drive ON command (BOP20 green or DI via p0840) r0898.0 = 1 Controller enable
3 OFF2 (p0844), OFF3 (p0848) clear r0898.1, r0898.2 = 1 Coast stop and quick stop cleared
4 EPOS master enable p2656 = 1 Positioner module armed
5 Traversing / jog / homing bit-coded control word per p2651…p2653 Motion command
6 Setpoint / actual value source p2650, p2651 Setpoint source configured

The control word structure for EPOS is found in r2589 (status word EPOS) and the command word is p2586 (control word EPOS). Bits 0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 13 each have documented meanings. Drive the control word from a fast controller (PROFIdrive telegram 111 or telegram 7 with EPOS extension) or from the BOP20 Manual mode for jog.

Verification and Diagnostic Parameters

After enabling EPOS, verify the drive responds correctly without a moving load (motor unloaded or shaft decoupled for first test):

  • r2521 – Position actual value (LU, after mechanical conversion).
  • r2522 – Velocity actual value (LU/s).
  • r2523 – Velocity setpoint (LU/s).
  • r2589 – EPOS status word. Bits: 0 = active, 1 = velocity setpoint reached, 2 = position setpoint reached, 4 = following error, 5 = target reached, 6 = home position reached, 8 = jog active.
  • r2684 – Following error (LU).
  • r2685 – Following error tolerance counter.
  • r2719 – Current traversing block number.
  • r2740 – Current motion status (Positioning / Homing / Jog).

Set p2542 (positioning window) and p2544 (positioning window time) so that bit 5 of r2589 indicates target reached reliably.

Troubleshooting Matrix

Symptom Likely Cause Diagnostic Parameter Corrective Action
BOP shows "EPOS not active" when writing p2656 Function module missing (r0108.3 = 0) r0108 Set p0108[1] = 11C (hex), cycle power
Alarm A07456 "EPOS enable missing" after p2656 = 1 Controller enable (r0898.0) absent or OFF2/OFF3 active r0898, r0899 Issue ON command via BOP20 green button, check p0840 / p0844 / p0848
Motor oscillates after enabling Speed controller tuning not executed r0068, r1480 Run p1900 / p1910, capture speed controller response, adjust p1460 / p1462
EPOS responds but does not move Setpoint not enabled (no control word bit for jog/traverse) r2589 Drive p2586 (control word EPOS) from BOP20 Manual mode or from PLC
Positioner active but following error (F07452) Following error tolerance too tight or mechanical binding r2684, p2542 Increase p2542 / p2544, inspect mechanics, verify p1460 gain
Drive refuses to write p0108[1] Drive in run state (r0002 = 1) or p0009 not in correct state r0002, p0009 Bring drive to commissioning state (p0009 = 0), block ON, then write
Mechanic moves only on input of p108 = 11C but license missing EPOS not licensed for this CU variant r0199, license table Order Siemens license (6SL3072-…-EPOS) or upgrade CU firmware per Siemens catalog
ROM not saved; parameters lost on power cycle p0977 = 1 not executed p0977 Trigger p0977 = 1, wait for BOP copy icon to clear

Field-Engineering Notes

  • On a default SINAMICS S120 (factory state), the BOP20 commissioning path typically requires only p108 index 1 and p2656 in addition to motor data. The field report confirms this minimal-entry approach produces a working EPOS from defaults.
  • Always cycle power after a p0108 change; the function module reconfiguration is not live. A quick alternative on CU310-2 is p0971 = 1 (parameter reset / parameterization level) but this also forces a restart.
  • The drive enforces write protection on certain parameters when controller enable is active. Always issue OFF1 (red button on BOP20) before modifying motion limits.
  • EPOS bits documented in the List Manual vary by firmware version. The r0108.3 / r0108.4 status indicators confirmed in the source are stable across V4.x and V5.x. Do not assume r0108.5 and above are identical without checking the firmware-specific List Manual.
  • For deterministic multi-axis commissioning, build a startup script and reuse it. Each axis saved with p0977 = 1 becomes a stand-alone commissioning target.

FAQ

Can SINAMICS S120 EPOS really be commissioned without STARTER?

Yes. With a BOP20 panel you can directly edit p0108[1] = 0x011C (hex) to enable the function modules, set p2656 = 1 to arm the basic positioner, and write all required mechanics / limits / velocity parameters. The List Manual is the source of truth; STARTER only adds a graphical interface and trace recording.

What does p0108[1] = 0x011C enable?

0x011C sets bits 2, 3, 4, and 8. Bit 3 enables the basic positioner (EPOS), bit 4 enables the extended setpoint channel, and bit 8 enables additional EPOS features per firmware documentation. r0108 reports the active configuration after the next ramp-up cycle. Bit 2 corresponds to the extended speed setpoint channel.

How do I check whether EPOS is currently active?

Read r0108 from the BOP20. Bit 3 = 1 indicates the basic positioner function module is active. If r0108.3 = 0, the firmware either does not include EPOS or the module has not yet been activated; p0108[1] must be set and the drive rebooted.

Why does the drive refuse to write p0108[1]?

The drive must be in commissioning state and the controller enable must be off. Set p0009 = 0, ensure r0898.0 = 0 (no ON command), then write p0108[1]. The drive queues the change and applies it on the next power cycle or after p0971 = 1.

Which Drive-CLiQ motor works out of the box with this procedure?

Any Siemens SIMOTICS S servo with built-in Drive-CLiQ (1FK7, 1FT7, 1PH8, 1FK2, 1FT2, 1FW6) auto-uploads its electronic nameplate. After Drive-CLiQ detection, running p1900 / p1910 completes identification, and EPOS can be activated immediately. Motors without Drive-CLiQ require manual parameter entry of p0300…p035x.

How long does a BOP20-only EPOS commissioning take?

Plan 30–60 minutes for first-time setup including motor identification, function module activation, and parameter entry. Subsequent axes using the same script take about 10 minutes each because p1900 / p1910 can be skipped if motor data is already on the SD card.

Where can I find the official parameter reference?

The current List Manual (LH1) and Commissioning Manual (IH1) for SINAMICS S120 on Siemens Industry Online Support contain the canonical descriptions. The Commissioning Manual entry point is at the SINAMICS S120 commissioning manual PDF. Cross-check r0108, p0108, p2656, and p25xx / p26xx against the List Manual of the specific firmware build loaded.

Back to blog