Decoding and Tracing PROFIBUS DP Drive Status and Control Words in PCS 7
To trace and decode raw PROFIBUS DP process data words (PZD) from an undocumented variable-frequency drive in SIMATIC PCS 7, map the signals using standard PROFIdrive profile structures. In the S7-400, the first input word (e.g. IW512) is Status Word 1 (ZSW1), where Bit 0 indicates 'Ready to switch on', Bit 2 indicates 'Operation enabled', and Bit 3 indicates 'Fault present'; the second input word (IW514) is Actual Speed (N_ACT, scaled 16#4000 = 100%). In CFC, connect the input word to a Word-to-Bool converter (W_BO) to monitor individual bits in a variable table or trend chart during manual start/stop tests to confirm signal mapping.
Table of Contents
- PROFIdrive Profile Standard: PZD Word and Bit Architecture
- Reverse-Engineering Undocumented Drive Signals via Variable Tables
- Connecting and Decoding Drive Status in CFC via W_BO Blocks
- Standard PROFIdrive PZD Telegram Mapping and Bit Definition Reference
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
PROFIdrive Profile Standard: PZD Word and Bit Architecture
In industrial automation, variable-frequency drives (VFDs) communicating over PROFIBUS DP exchange cyclic process data via PZD (Process Data) telegrams. Regardless of the drive manufacturer (Siemens SINAMICS, ABB, Danfoss, Schneider Altivar), most drives adhere to the standardized PROFIdrive Profile:
- PZD 1 Input (ZSW1 / Status Word 1): Transmits 16 boolean drive states (Ready, Running, Tripped, Local/Remote).
- PZD 2 Input (N_ACT / Actual Speed): Transmits actual motor velocity formatted as a 16-bit integer, where
16#4000(decimal16384) represents 100% nominal motor speed. - PZD 1 Output (STW1 / Control Word 1): Transmits commands from PLC to drive (Bit 0 = ON/OFF1, Bit 3 = Enable, Bit 7 = Fault Acknowledge).
- PZD 2 Output (N_SET / Speed Setpoint): Transmits the commanded speed setpoint formatted as
16#4000= 100%.
When inheriting a plant lacking symbol tables or block source code, understanding this standardized byte layout allows engineers to decode drive signals rapidly without proprietary vendor software.
Reverse-Engineering Undocumented Drive Signals via Variable Tables
To determine the exact bit mapping and physical I/O addresses of an unknown drive:
- Identify Base Address in HW Config:
- In SIMATIC Manager, open HW Config.
- Locate the PROFIBUS DP slave for the motor drive.
- Note the input and output address ranges (e.g.I 512..515andQ 512..515for a standard 2-word PZD telegram). - Create a Variable Table (VAT):
- In SIMATIC Manager, insert a new Variable Table.
- Add addressesIW 512andIW 514.
- Set the display format forIW 512to Binary (2#...) andIW 514to Hexadecimal (16#...).
- Activate PLC -> Monitor to observe live bit patterns. - Perform Controlled Diagnostic Exercises:
- Drive At Rest: Record the baseline bit pattern (typically2#0000_0010_0011_0001).
- Start Drive: Issue a start command and observe which bit toggles to1(Bit 2: Operation Enabled).
- Simulate Trip: Open the local safety stop or trigger an overload; observe which bit asserts (Bit 3: Fault Present).
Connecting and Decoding Drive Status in CFC via W_BO Blocks
To integrate these raw bits cleanly into SIMATIC PCS 7 Continuous Function Charts (CFC):
- Deploy Converter Block: In CFC, drag the standard conversion block
W_BO(Word to 16 Boolean Outputs) from the STEP 7 library (CFC Library -> Convert). - Connect Address: Connect the raw peripheral input word (e.g.
IW 512orPEW 512) to the input pinInofW_BO. - Map Bits to Motor Block: Interconnect individual output pins to the APL motor block (
MotLorMotSpdCL):
- Connect Bit 2 (Operation Enabled) toFbkRun(Run Feedback).
- Connect Bit 3 (Fault Present) through an inverter toTriporProtect.
- Connect Bit 9 (Remote Control) toLocalLi. - Scale Speed Readback: For
IW 514, connect to a divider block or custom SCL block that multiplies by nominal speed and divides by16384.0to output calibrated engineering units (e.g. RPM or Hz) toRbk.
Standard PROFIdrive PZD Telegram Mapping and Bit Definition Reference
The following table details the standardized PROFIdrive Status Word 1 (ZSW1) bit mapping:
FbkRun on MotLTripWrn or System AlarmLocalLi / Mode logic[!NOTE]
Commercial Accuracy Notice: Decoding fieldbus telegrams and mapping standard drive profiles uses native STEP 7 conversion > blocks (W_BO,BO_W). Interconnecting decoded drive bits to APL motor blocks (MotL/MotSpdCL) consumes standard AS RT > Process Objects, but requires no specialized drive communication licenses.
Verification
Verify accurate PROFIBUS drive telegram decoding:
- Variable Table Correlation: In the VAT table, compare
IW 512bits against the physical VFD display panel. Verify that when the drive trips, Bit 3 reliably flips to1. - CFC Online Test: In CFC, activate Test -> Test Mode. Verify that
W_BOoutput pins toggle accurately in response to field actuator states. - Speed Readback Calibration: Run the motor at 50% speed. Verify that
IW 514reads approximately16#2000(8192 decimal) and that the scaled CFC output displays 50% (or half of motor rated RPM).
Limitations and Operational Precautions
Observe these guidelines when working with PROFIBUS drive data:
- Byte Endianness (High Byte vs Low Byte): In S7-400 Big-Endian architecture,
IW 512consists ofIB 512(High Byte = Bits 8 to 15) andIB 513(Low Byte = Bits 0 to 7). Ensure your bit references account for S7 byte ordering. - Consistent Data Transfer: PZD telegrams exceeding 4 bytes (e.g. Telegram 352 with 6 PZD words) require consistent transfer using
SFC14(DPRD_DAT) andSFC15(DPWR_DAT) to avoid word tearing. - Drive Fault Reset Handshake: When resetting a drive trip via Control Word 1 Bit 7, the command must be pulsed (0 -> 1 -> 0); holding Bit 7 permanently high inhibits subsequent fault detection.
Engineer FAQ
How do I know which PROFIBUS address corresponds to my drive?
Open HW Config in SIMATIC Manager. Look at the PROFIBUS DP master line; each drive icon displays its assigned DP address (e.g. DP Station 5) and the configured I/O address range in the lower table.
Why is 16384 used to scale drive speed instead of 100 or 1000?
The PROFIdrive standard normalizes 100% nominal speed to 16#4000 (hexadecimal 4000), which equals decimal 16,384 (half of the 16-bit signed integer range, leaving headroom up to 200% overspeed at 16#7FFF).
Can I track these drive bits in WinCC trends?
Yes. By connecting the W_BO output pins to an APL event or monitoring block (EventTS or MonDiL), you can archive the digital bits and plot them in WinCC TrendControl.
What block should I use in PCS 7 if the drive is a Siemens SINAMICS G120?
Use the certified PCS 7 drive block FbDrive or the specialized SINAMICS library block APL_G120, which automatically handles all PZD telegram decoding and scaling.
Technical References
- PROFIdrive Profile - Profile for Variable Speed Drives (PROFIBUS User Organization Spec)
- SIMATIC PCS 7 Advanced Process Library (APL) Function Manual (Entry ID 109781589)
- SIMATIC STEP 7 V5.6 System and Standard Functions Manual (Entry ID 109751826)
- Siemens Industry Online Support FAQ on Decoding PROFIBUS Drive Status Words (Entry ID 109756845)
Related Articles
- Displaying Inverter Temperatures from SINAMICS G120 on WinCC in PCS 7
- Resolving FbDrive Bad Output and ErrorNum 1 with SINAMICS G120C in PCS 7
- Tracking Fault Origins and Trip Signals on APL MotSpdCL Motors
- Handling PROFIBUS DP WORD and 32-Bit BOOL Data as REAL in PCS 7 CFC
Related Tags
- PROFIBUS DP
- PROFIdrive
- Status Word 1
- ZSW1
- W_BO
- Drive Diagnostics