Overview
The SINA_FB function block is Siemens' standardized application interface for exchanging cyclic process data (setpoints, actuals, control/status words) and acyclic parameter read/write data between a SIMATIC S7 controller and any SINAMICS drive family that supports the PROFIdrive V4 profile. When porting a SIMATIC Manager project that already uses SINA_FB with an S7-300 to a TIA Portal project with an S7-1200, the block itself, the telegram structure, and the parameter model remain identical — only the installation path inside TIA Portal changes.
This reference covers the path for TIA Portal V15.1 (where the blocks ship in a downloadable DriveLib), the simplified path in V16+ (native SINAMICS instructions), and the telegram assignments, FB I/O, EPos configuration, and field-proven troubleshooting required to bring up a CU305 PN-driven S110 from an S7-1200 CPU.
Prerequisites
| Item | Requirement |
|---|---|
| Engineering software | TIA Portal V15.1 (with DriveLib entry 109475044) or V16+ (native SINAMICS instructions) |
| PLC | SIMATIC S7-1200 (CPU with PROFINET PN controller, e.g. CPU 1214C DC/DC/DC, firmware ≥ V4.2) |
| Drive | SINAMICS S110 with CU305 PN Control Unit, firmware ≥ 4.4 (recommended 4.7 or later for full EPos functionality) |
| Commissioning tool | STARTER (≤ V5.x) or Startdrive inside TIA Portal (V14 SP1+) |
| Library | DriveLib for TIA Portal — Siemens support entry ID 109475044 |
| GSD file |
GSDML-V2.3-Siemens-Sinamics_S110-…xml installed in TIA Portal |
| Optional HMI | Pro-face GP-4x00 series — install the Pro-face TIA Portal Ethernet driver when binding an HMI to the same project |
Confirm the installed TIA Portal version under Help → Version Info before installing the library. The Pro-face TIA Portal Ethernet driver installer verifies the installed Portal version against its compatibility list before placing files. New users can also work through the official First steps in TIA Portal walkthrough to set up a base S7-1200 project.
SINAMICS S110 and SINA_FB Fundamentals
The SINAMICS S110 is a single-axis servo drive in the SINAMICS family. The CU305 PN Control Unit integrates a PROFINET IRT interface, supports the PROFIdrive V4 profile, and exposes a slot-based telegram structure. SINA_FB talks to the drive through PROFINET using one standard telegram for the cyclic process data and an acyclic PROFIdrive parameter channel for reading/writing parameters such as p2000 (reference speed) or p15 (macro).
SINA_FB is part of the DriveLib function block family (Siemens AG, function-block application document):
- SINA_FB — Main block; cyclic process data plus acyclic parameter access via the standard PROFIdrive channel.
- SINA_PARA — Pure acyclic parameter read/write; usable standalone for diagnostics.
- SINA_SPEED — Higher-level speed-control block built on SINA_FB; encapsulates ramp, enable, fault handling.
- SINA_POS — Higher-level positioning block built on SINA_FB; interfaces with the internal EPos basic positioner.
- SINA_ENC — Encoder evaluation block.
Source: Function blocks to control the SINAMICS with SIMATIC S7 in TIA (Siemens application document, PDF).
DriveLib Library Acquisition and Installation
For TIA Portal V15.1 the SINAMICS S110 instructions are not bundled with the installer. The official distribution channel is the Siemens Industry Online Support entry 109475044. Download the ZIP, extract it, and proceed:
- Open TIA Portal with the target project.
- Switch to the Project view and open the Libraries task card.
- Click Global libraries → Open global library → Browse to the extracted DriveLib file (e.g.
…TIA_V15_1_DriveLib.al15_1). - Expand the library and drag the
SINA_FB(and any requiredSINA_PARA/SINA_SPEED/SINA_POS) block into a Program block folder of one of the S7-1200 CPUs. - Compile the program; resolve any version conflicts by selecting the FBs from the Library view master copies.
For TIA Portal V16 and later, open the Instructions task card, type SINAMICS in the search box, and you will see SINA_FB, SINA_SPEED, SINA_POS, and SINA_PARA under the Drive group. Drop them directly into the S7-1200 program without any library import.
Hardware Configuration in TIA Portal
- Add the S7-1200 CPU (e.g. CPU 1214C DC/DC/DC) to the project; confirm a PROFINET interface exists.
- Install the SINAMICS S110 GSDML via Options → Manage general station description files (GSD). Restart TIA Portal if prompted.
- Drag the SINAMICS S110 (CU305 PN) from the hardware catalog (Other field devices → PROFINET IO → Drives → Siemens AG → SINAMICS → S110) onto the PROFINET subnet of the CPU.
- Assign the CU305 PN a unique IP address and a PROFINET device name (e.g.
s110-axis-1). - Open the device view of the CU305 PN and place the required Standard telegram into slot 1.
Assign the device name to the CU305 from TIA Portal via Online → Accessible nodes; the S110 must be in the same IP subnet as the S7-1200 (default 192.168.0.x/24 for Siemens commissioning environments).
Standard Telegram Selection
The S110 supports a fixed subset of PROFIdrive telegrams. Choose based on the higher-level block you intend to use:
| Higher-level block | Standard telegram | Cyclic words (PLC → drive / drive → PLC) | Use case |
|---|---|---|---|
| SINA_SPEED (speed control) | Telegram 1 | 2 / 2 (STW1/ZSW1, NSOLL/NIST) | Open-loop speed setpoint |
| SINA_SPEED with torque limit | Telegram 2 | 4 / 4 (STW1/ZSW1, NSOLL/NIST, M_LIM/M_ACT, FAULT/WARN) | Speed control with torque reduction |
| SINA_POS / EPos | Telegram 111 | 12 / 12 (STW1/STW2, ZSW1/ZSW2, MELDW, POS_STW/POS_ZSW, …) | Positioning via basic positioner |
| SINA_PARA only (acyclic) | None (acyclic only) | 0 / 0 | Diagnostics, no motion |
For S110 + S7-1200 with SINA_POS / EPos, place Standard telegram 111 in slot 1. The PROFINET slots 0 (DO) and 0 (DI) remain empty or carry the diagnostic slot. The S110 processes telegram 111 internally with the EPos configuration in p100 (telegram selection) and the MDI mode in p2640.
errorId mismatch and refuse to release the enable.SINA_FB Block Instantiation and Wiring
Open OB1 (or a cyclic interrupt OB, e.g. OB30 at 10 ms) and drop the SINA_FB. The block requires a background DB (single instance); TIA Portal creates it automatically. Key I/O points:
| I/O | Direction | Data type | Meaning |
|---|---|---|---|
hwId |
Input | HW_IO | Hardware identifier of the PROFINET telegram slot |
enableAxis |
Input | BOOL | Master enable; TRUE releases OFF1 / STW1.0 |
ackError |
Input | BOOL | Resets pending drive faults (STW1.7) |
quickStop |
Input | BOOL | OFF3 (STW1.2 = FALSE forces ramp stop) |
enableSpeed |
Input | BOOL | Enable speed controller (STW1.3) |
refSpeed |
Input | REAL | Reference speed in rpm (corresponds to drive parameter p2000) |
speedSetpoint |
Input | REAL | Setpoint speed in rpm (scaled 100% = refSpeed) |
actSpeed |
Output | REAL | Actual speed in rpm |
actCurrent |
Output | REAL | Actual current in A |
error |
Output | BOOL | Drive fault present |
warning |
Output | BOOL | Drive warning present |
errorId |
Output | WORD | PROFIdrive error code |
warningId |
Output | WORD | PROFIdrive warning code |
Bind hwId by right-clicking the input and selecting the slot that contains standard telegram 1 (or 111 for EPos). The remaining bits in the telegram (e.g. M_LIM, torque reduction) are exposed through higher-level blocks SINA_SPEED and SINA_POS — do not write them directly in SINA_FB.
Sample Ladder Wiring for SINA_FB
The following structured-text snippet shows the minimum enable chain for safe motion. It assumes a start input i_Start and a hardware stop circuit i_StopOK:
IF i_Start AND i_StopOK AND NOT i_EStop THEN
iDB_SINA.enableAxis := TRUE;
else
iDB_SINA.enableAxis := FALSE;
END_IF;
iDB_SINA.ackError := i_AckPushbutton;
iDB_SINA.quickStop := NOT i_EStop;
iDB_SINA.enableSpeed := i_Start AND i_StopOK;
iDB_SINA.refSpeed := 3000.0; // matches p2000
iDB_SINA.speedSetpoint := 1500.0; // 50 % of refSpeed
Wire iDB_SINA.error to a global fault flag, and route the errorId WORD to an HMI for diagnostics.
Basic Positioner (EPos) Integration
To run positioning, enable EPos on the S110:
- In STARTER or Startdrive, open the S110 project and switch the configuration to Basic positioner (EPos). Drive parameter
p100 = 111selects telegram 111;p111/p112/p113/p114configure the EPos control word structure. - Commission the axis using the STARTER/Startdrive wizard: enter the encoder PPR, mechanical leadscrew pitch, gear ratio, and the maximum velocity/acceleration in
p2571/p2572/p2573. - Set the reference point (home position) and run the Reference point approach mode from the control panel.
- Place SINA_POS in the S7-1200 program; the block exposes
execute,position,velocity,mode(MDI / direct setpoint / jogging), and adoneoutput.
SINA_POS internally calls SINA_FB; you do not instantiate SINA_FB separately when using SINA_POS, but the same telegram slot binding applies.
Online Commissioning Procedure
- Compile the S7-1200 project and download to the PLC.
- Confirm PROFINET connection establishes (no red LED on CU305 PN, no
Station failurediagnostic in TIA Portal Online → Online & diagnostics). - Open the SINA_FB instance DB in Monitor / Force; verify the control/status words toggle during enable.
- Set
enableAxis := TRUE,enableSpeed := TRUE,quickStop := TRUEin a watch table. Drive should run up to the setpoint speed withrefSpeed = 3000rpm andspeedSetpoint = 1500rpm (50 %). - Force a controlled OFF3 (set
quickStop := FALSE) and confirm the drive ramps down to zero. - For EPos, issue a positioning command via SINA_POS; verify
donerises and the actual position matches the setpoint withinp2546(position window). - Save the project and the S110 parameter set (STARTER: Copy RAM to ROM; Startdrive: Load to PG).
Field-Proven Diagnostics
When commissioning fails, capture raw data rather than guess. Three quick checks resolve most S110 / S7-1200 / SINA_FB issues:
-
Trace the PROFINET telegram. In TIA Portal, right-click the CU305 PN → Online & diagnostics → Telegram diagnostics. The process data must alternate:
STW1from PLC must change with each enable transition;ZSW1from drive must reflect0x0531(powered up, no fault) within 200 ms. -
Read drive parameter r0947 / r2122. The current fault code is in
r0947[0]; the warning is inr2122[0]. IfSINA_FB.errorId = 0xFxxx, look upr0947directly on the S110 to read the human-readable fault number (e.g. F30001, F07901). -
Verify scaling.
refSpeedat the SINA_FB input must equal drive parameterp2000. A mismatch of even 5 % causes the actual RPM reading atactSpeedto disagree with the real shaft speed, even though the drive runs.
Troubleshooting Matrix
| Symptom | Probable cause | Remediation |
|---|---|---|
SINA_FB error = TRUE, errorId = 0xFxxx
|
Drive fault active; read parameter r0947
|
Acknowledge via ackError; fix root cause (motor, encoder, STO wiring) |
actSpeed = 0 but enableAxis is TRUE |
Telegram not bound to hwId, or OFF1 missing (STW1.0) |
Rebind hwId; verify STW1 = 0x047E (run enable set) |
| PROFINET station failure (yellow LED on CPU) | Device-name mismatch or IP conflict | Re-assign PROFINET name from TIA Portal: Online → Accessible nodes |
EPos execute accepted, done never TRUE |
Axis not referenced / homed; or enableAxis chain broken |
Run reference point approach in STARTER/Startdrive; trace STW1/STW2 |
| SINA_FB instruction missing in V15.1 instructions pane | DriveLib not installed | Open global library from entry 109475044 |
| Block version mismatch (yellow F-CPU flag) | DriveLib version newer than the S7-1200 firmware supports | Use the DriveLib revision matching the CPU firmware (CPU firmware ≥ V4.4 recommended for V16+) |
SINA_POS error rises after start |
Traversing-range limits (p2570) violated | Set software limit switches in p2570/p2571 or deactivate with SW_LIMIT_ENABLE = 0 temporarily |
| Speed setpoint is half of expected |
refSpeed ≠ p2000
|
Align refSpeed with drive parameter p2000
|
| HMI driver cannot reach S7-1200 after Portal upgrade | Pro-face TIA Portal driver mismatch | Reinstall from the Pro-face driver page matching the new Portal version |
Safety and Lifecycle Notes
Functional safety is not handled inside SINA_FB. STO (Safe Torque Off) on the S110 must be wired separately to a fail-safe input on the S7-1200 (F-CPU required) or to a dedicated safety relay. The S110 supports SS1, SS2, SLS, and SOS via the integrated safety functions, but parameterisation belongs in STARTER/Startdrive, not in SINA_FB.
For long-term supportability, drive a TIA Portal version that receives Siemens' classic (non-SUS) updates. A subscription (SUS) license is the cheapest path to ride every minor update without re-purchasing, but even Portal V15.1 with DriveLib 109475044 remains a working combination as long as the S7-1200 CPU firmware is compatible.
FAQ
Can I use SINA_FB with TIA Portal V15.1 and an S7-1200?
Yes. V15.1 does not ship the SINAMICS instructions natively; download the DriveLib for TIA Portal from Siemens Industry Online Support entry 109475044 and add the blocks as a global library.
Which standard telegram should I select for EPos on the SINAMICS S110?
Standard telegram 111. Place it in PROFINET slot 1 of the CU305 PN and bind its hardware identifier to the hwId input of SINA_FB, or use SINA_POS which encapsulates SINA_FB.
What reference speed should I enter at refSpeed in SINA_FB?
Match the drive's p2000 reference speed (rpm). All setpoint and actual values in SINA_FB are scaled to 100 % of this value. Typical S110 values: 1500, 2000, 3000, or 5000 rpm.
Do I need a separate SINA_PARA call for parameter access?
No. SINA_FB already includes acyclic parameter read/write. Use SINA_PARA only when you need parameter access without any cyclic process data exchange (pure diagnostics or parameter backup).
Is SINA_FB supported on the S7-1200 firmware 4.2, or do I need V4.4+?
DriveLib 109475044 lists compatibility with the S7-1200 firmware shipped with the same TIA Portal version. For V15.1 the matching firmware is V4.2; for V16+ use V4.4 or later. SINA_FB is a user-space FB and has no special firmware requirement beyond the S7-1200 supporting PROFINET IRT and DPV1 parameter services.
How do I interpret errorId = 0xFxxx from SINA_FB?
The high byte carries the PROFIdrive fault class, the low byte is the drive fault number. Read the matching fault code on the S110 in parameter r0947 and look it up in the SINAMICS S110 List Manual to identify root cause (encoder, STO, motor overtemperature, line phase, etc.).