MTConnect Data Acquisition from SIMODRIVE 611 840D Power Line

David Krause12 min read
Data AcquisitionSiemensTechnical Reference
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

1. Overview

Extracting live motor current (and related drive telemetry) from a legacy SIMODRIVE 611 installation driving a SINUMERIK 840D Power Line control is a common retrofit requirement on CNC machining centers older than the Solution Line generation. The original PLC and FM-NC NCU are combined in a single hardware platform, HMI Advanced (or older MMC103) is the operator interface, and the 611 analog/digital drive bus is not natively exposed to modern shop-floor databases.

The recommended path documented by Siemens CS is the TechSolve VA-SHA-1.3-0.0 SINUMERIK 840D HMI Advanced MTConnect Adapter, a software adapter that publishes drive and NC data items over the MTConnect standard XML/HTTP protocol. Once the adapter streams data, any MTConnect-compliant client (agent, dashboard, OPC UA bridge, or custom script) can write motor current values into a plant database (SQL, InfluxDB, historian, etc.).

This reference covers adapter selection against the 611 variant present on the machine, the directory layout the adapter expects on the 840D, the XML configuration file, the motor current data item mapping, and the troubleshooting matrix for the most common commissioning issues on Power Line hardware.

2. System Identification: SIMODRIVE 611 Families and 840D Power Line

Before any adapter is specified, the exact 611 family must be identified. Siemens produced three distinct 611 generations, and only the later two expose data structures that a software adapter can parse reliably.

Family Era Drive Bus Notes
SIMODRIVE 611A Pre-1998 Analog ±10 V setpoint No digital drive bus. Current feedback available only via terminal block (terminals 56.x / 111.x) on the NE module. Adapter cannot read this directly — external transducer required.
SIMODRIVE 611D 1998–2003 PROFIBUS-DP to 840D Digital drive bus; drive parameters readable via the 840D PLC/NCK interface. Compatible with TechSolve MTConnect adapter when installed on an 840D Power Line NCU.
SIMODRIVE 611U 2003+ PROFINET / PROFIBUS Universal converter, sometimes paired with non-Siemens controls. Adapter still applies when the upstream controller is an 840D Power Line.

The SIMODRIVE 611 digital configuration manual (Siemens document PJU_0613) is the authoritative reference for drive parameters, NE module terminal assignments, and the PROFIBUS telegram layout used by the 840D NCK to read motor current. Always verify drive bus generation against this document before commissioning.

Reference: SIMODRIVE 611 digital Configuration Manual (PDF).

3. TechSolve VA-SHA-1.3-0.0 Adapter Overview

The VA-SHA-1.3-0.0 is a software-only adapter — it is not a hardware module. The artifact is a directory of binaries and configuration files that is loaded onto the 840D's operator panel (HMI Advanced on PCU 50/70, or HMI Operate on NCU for Solution Line). It uses the 840D's published NC variables (axis currents, spindle load, feedrate, program state, alarms) and the HMI's local OPC or DDE bridge to sample them at the configured period, then publishes them as MTConnect DataItem elements.

Key technical characteristics:

  • Publisher protocol: MTConnect 1.x over HTTP (port 5000 by default; configurable).
  • Configuration: Single config.xml controlling sampling period, data item on/off state, and adapter bind address.
  • Data items exposed by default: Axis load (%), axis current (A RMS, when available), spindle speed (RPM), feedrate override, program name, execution state, controller mode, alarm state.
  • Authentication: None at adapter level — deploy behind firewall or VPN.
  • OS support: Windows NT/95 (MMC103), Windows XP Embedded (HMI Advanced on PCU 50), Windows Embedded Standard 7 (HMI Operate on PCU 50.3).

4. Compatibility Matrix

840D Generation HMI Operator Panel Adapter Variant Motor Current Available?
Power Line + FM-NC (combined PLC/NCU) HMI Advanced PCU 50 / PCU 70 VA-SHA-1.3-0.0 (this article) Yes, via 611D drive bus on PROFIBUS
Solution Line, NCU 710/720/730 HMI Operate on NCU Embedded NCU TechSolve Operate-on-NCU variant Yes, via NCK variables on PROFINET
Solution Line, PCU 50.3 HMI Operate on PCU PCU 50.3 TechSolve Operate-on-PCU variant Yes, via NCK variables
MMC103 (legacy) Windows NT / 95 MMC103 Legacy adapter build Limited; current is not always exposed by MMC103
Power Line, FM-NC with SIMODRIVE 611A HMI Advanced PCU 50 VA-SHA-1.3-0.0 (limited) No — external current transducer required, 611A has no digital drive bus

On the customer's CNC machining center with 840D Power Line control, the VA-SHA-1.3-0.0 is the correct variant. Confirm SIMODRIVE 611 sub-family on the machine label (611A, 611D, or 611U) before commissioning — this determines whether motor current can be read directly or whether a Hall-effect CT (e.g., LEM LA 125-P) must be installed on the NE module output.

5. MTConnect Protocol Architecture

MTConnect is a standard, fully-defined XML-over-HTTP protocol. The publisher (the TechSolve adapter running on the 840D) exposes three primary endpoints:

  • GET /probe — returns the static device description (XML); defines the data items the device can produce.
  • GET /current?path=//*&at=N — returns the current snapshot of all data items at sequence number N.
  • GET /sample?path=//*&from=N&count=K — returns the next K samples after sequence N (long-poll semantics).

MTConnect cannot be "configured" in the client sense — the protocol is uniform across all compliant devices. The only variability is which data items the underlying device supports. This means a single MTConnect agent (e.g., the open-source cppagent) can collect from Siemens, Mazak, Okuma, and Haas machines on the same plant network without per-vendor plugin code.

For SQL/database integration, the typical pattern is:

  1. TechSolve VA-SHA-1.3-0.0 publishes MTConnect XML on the 840D.
  2. MTConnect agent on a plant server buffers and de-duplicates samples.
  3. Adapter script (Python, C#, Node) parses the XML and writes to the plant database (SQL Server, PostgreSQL, InfluxDB, OSIsoft PI, etc.).

6. Adapter Installation Procedure

6.1 Prerequisites

  • 840D Power Line NCU with combined PLC/NCU (FM-NC) running.
  • PCU 50 or PCU 70 operator panel with HMI Advanced, service mode unlocked (password from Siemens commissioning engineer).
  • TechSolve VA-SHA-1.3-0.0 deliverable (USB stick, ZIP file, or CD).
  • Ethernet access to the plant network for the PCU (separate from the 840D NCU PROFIBUS network).
  • Static IP reserved for the PCU on the plant VLAN.

6.2 Step-by-Step

  1. Back up the HMI configuration before any change. On PCU 50, copy the entire D:\hmisl\ directory and the registry branch HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\SINUMERIK\HMI to a USB stick.
  2. Create the adapter directory at C:\MTConnect\VA-SHA-1.3\ on the PCU. Copy the supplied adapter.exe (or adapter.dll for HMI Advanced in-process load) and the default config.xml into this directory.
  3. Register the adapter with HMI Advanced by editing the HMI startup configuration file. The relevant file is typically D:\hmisl\user\system\configuration\win.ini or the per-area config under sinumerik\hmi\cfg\. Add a new section:
    [MTConnect]
    Process=MTConnectin\adapter.exe
    AutoStart=1
    LogFile=C:\MTConnect\logs\adapter.log
    
  4. Edit config.xml to set the bind address, port, and the list of enabled data items (Section 7).
  5. Reboot the PCU. HMI Advanced will launch the adapter at startup. Verify the log file adapter.log shows the listener binding successfully on the configured port (default 5000).
  6. From a laptop on the same VLAN, browse to http://<PCU_IP>:5000/probe. The XML response should list all configured data items.
  7. From a laptop, run curl http://<PCU_IP>:5000/current?path=//*&at=0. The first response should show sequence number 1 and the current snapshot of all enabled data items.

6.3 Verification

The adapter is correctly installed when:

  • /probe returns HTTP 200 with a valid MTConnect probe XML (must validate against the MTConnect XSD).
  • /current returns a non-empty <Streams> element.
  • The avail data item shows AVAILABLE (vs. UNAVAILABLE).
  • The 840D HMI Advanced does not report an alarm relating to the new MTConnect process during normal operation.
Critical: Never modify win.ini or the HMI registry while HMI Advanced is in PRODUCTION mode with a part program loaded. Always place the control in RESET and put the machine in maintenance state before editing HMI startup files. A typo in win.ini can prevent HMI Advanced from booting.

7. XML Configuration Reference

The adapter is configured with a single config.xml file. A representative excerpt for motor current acquisition on a 3-axis machining center with 611D drives follows:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
  <Device name="CNC-01" uuid="0000-0000-0000-0000">
    <Address>0.0.0.0</Address>
    <Port>5000</Port>
    <SamplePeriod ms="1000"/>
    <NCKVariables>
      <!-- Axis currents, read from NCK via DB19 / PLC interface -->
      <Variable name="ax1Current" path="axisCurrent/axis1"/>
      <Variable name="ax2Current" path="axisCurrent/axis2"/>
      <Variable name="ax3Current" path="axisCurrent/axis3"/>
      <Variable name="spindleCurrent" path="axisCurrent/spindle"/>
      <Variable name="spindleLoad" path="axisLoad/spindle"/>
      <Variable name="feedrateOverride" path="feedrate/override"/>
      <Variable name="programName" path="program/name"/>
      <Variable name="execution" path="program/execution"/>
    </NCKVariables>
    <DataItems>
      <DataItem id="ax1Current" type="AMPS" category="SAMPLE" units="A">AXIS_1_CURRENT</DataItem>
      <DataItem id="ax2Current" type="AMPS" category="SAMPLE" units="A">AXIS_2_CURRENT</DataItem>
      <DataItem id="ax3Current" type="AMPS" category="SAMPLE" units="A">AXIS_3_CURRENT</DataItem>
      <DataItem id="spindleCurrent" type="AMPS" category="SAMPLE" units="A">SPINDLE_CURRENT</DataItem>
      <DataItem id="spindleLoad" type="PERCENT" category="SAMPLE" units="PERCENT">SPINDLE_LOAD</DataItem>
      <DataItem id="feedrateOverride" type="PERCENT" category="SAMPLE" units="PERCENT">FEEDRATE_OVERRIDE</DataItem>
      <DataItem id="programName" type="PROGRAM" category="EVENT">PROGRAM_NAME</DataItem>
      <DataItem id="execution" type="EXECUTION" category="EVENT">EXECUTION</DataItem>
    </DataItems>
  </Device>
</Configuration>

Parameter notes:

Element Function Typical Value
Address Bind interface for the MTConnect HTTP listener 0.0.0.0 (all), or a specific plant VLAN IP
Port TCP port for HTTP/XML streaming 5000 (MTConnect convention)
SamplePeriod Time between sample snapshots 1000 ms (1 Hz typical); 100–500 ms for fast processes
NCKVariables List of 840D NCK/PLC variables to sample Free-text mapping; adapter looks up by name in its internal driver
DataItem Exposed MTConnect data item Must be one of the MTConnect standard types (AMPS, PERCENT, PROGRAM, EXECUTION, etc.)

The default config.xml ships with a standard set of items already enabled. To turn a default item off, remove the corresponding <DataItem> block. To add a new item, declare both the <Variable> and the <DataItem> as shown above.

Engineering note: Sampling period should be set to the slowest rate that still meets the use case. Sampling motor current at 100 ms (10 Hz) on 6 axes produces 60 data items per second of network traffic. For a plant historian, 1 s is usually sufficient; for an alarm/detection use case (collision, chip load excursion), 100–250 ms is the practical lower limit before PROFIBUS-to-NCK read latency becomes a constraint.

8. Motor Current Data Flow to Plant Database

Once the adapter is publishing, the path to the plant database is straightforward. There is no native MTConnect-to-SQL bridge in the adapter — the typical implementation is one of:

8.1 Open-Source cppagent + Custom Sink

Run the MTConnect C++ Agent on a plant server. It acts as a buffering HTTP client to the adapter on the 840D. Configure an output sink (e.g., the MQTT or file adapter included in cppagent) and write the data to a topic. A downstream consumer (Node-RED, Python script) subscribes and writes to SQL.

8.2 Direct Python Polling

import requests, time, pyodbc

ADAPTER = "http://<PCU_IP>:5000"
CONN    = pyodbc.connect("DSN=PlantHistorian;UID=svc;PWD=..."))
SEQ     = 0

while True:
    r = requests.get(f"{ADAPTER}/sample?path=//DataItem[@type='AMPS']&from={SEQ}", timeout=5)
    r.raise_for_status()
    root = r.xml
    for stream in root.iter("ComponentStream"):
        for sm in stream.iter("Samples"):
            for s in sm.iter("Current"):
                di = s.attrib["dataItemId"]
                val = float(s.text)
                ts  = s.attrib["timestamp"]
                cur = CONN.cursor()
                cur.execute("INSERT INTO dbo.MotorCurrent (ts, di_id, amps) VALUES (?, ?, ?)",
                            (ts, di, val))
                cur.commit()
    SEQ = int(root.attrib["nextSequence"])
    time.sleep(1.0)

This pattern is recommended when the plant does not have a pre-existing historian and the engineer needs a lightweight, auditable bridge to SQL.

8.3 OPC UA Bridge

For plants that have standardized on OPC UA, run an MTConnect-to-OPC UA bridge (e.g., the mtconnect opcua reference bridge) so the existing OPC UA server exposes the CNC data items to the rest of the plant. This avoids adding a second parallel protocol stack.

9. Motor Current Acquisition — Physical Layer Notes

For SIMODRIVE 611D and 611U (PROFIBUS / PROFINET to 840D), the adapter can read axis and spindle current directly from the NCK because the drive broadcasts these as part of the cyclic PROFIBUS telegram. No additional hardware is required.

For SIMODRIVE 611A (analog drives), there is no digital drive bus. The NE module exposes raw current feedback at terminal block 56.x (for the 1FT/1FK motor resolver feedback) only in a limited set of configurations. In most cases, a Hall-effect current transducer (e.g., LEM LA 125-P, 125 A primary, 50 mA secondary) must be installed on the motor cable phase conductors and connected to an analog input module (e.g., a Siemens SM 331 AI8) on the 840D PLC. The MTConnect adapter cannot read this analog value directly — a separate PLC-side mapping is required, with the current values exposed as PLC variables that the adapter's NCKVariables block can reference.

Always identify the SIMODRIVE 611 sub-family on the machine label (under the cabinet door, on the NE module) before specifying hardware.

10. Troubleshooting Matrix

Symptom Likely Root Cause Action
/probe returns connection refused Adapter process not started; HMI config section missing or malformed Verify win.ini entry; check adapter.log; restart HMI in service mode
/probe returns 200 but /current shows all data items UNAVAILABLE NCK variable names in config.xml do not match the adapter's internal driver map Enable adapter debug logging; cross-reference variable names with the driver documentation; rename to match the canonical names
Motor current data item always shows 0 SIMODRIVE 611A without digital drive bus; variable not exposed by NCK Install Hall-effect CTs and PLC analog input module; expose value as PLC variable
Sample period is erratic; gaps in sequence numbers PROFIBUS bus error or HMI Advanced CPU saturation Check PROFIBUS diagnostics in HMI Advanced; check Windows task manager for CPU load on the PCU
Adapter starts but disconnects after a few hours HMI Advanced logs off the user after idle timeout, which kills the child process Configure Windows screensaver/idle settings; run the adapter as a Windows service instead of a HMI child process
Plant database writes are duplicated or out of order MTConnect agent buffer replay on reconnect; no monotonic timestamp filter De-duplicate on (dataItemId, timestamp) primary key in the SQL table
840D alarms after adapter install win.ini syntax error; HMI cannot parse new section Restore win.ini from backup; re-apply minimal change; reboot

Does the VA-SHA-1.3-0.0 adapter work on every 840D Power Line, or only specific hardware?

The VA-SHA-1.3-0.0 is built specifically for the 840D Power Line running HMI Advanced on a PCU 50 or PCU 70 operator panel. TechSolve ships separate adapter builds for Solution Line (HMI Operate on NCU), HMI Operate on PCU 50.3, and the legacy MMC103 (Windows NT/95) variants. The build is not interchangeable.

Can motor current be read directly from a SIMODRIVE 611A system?

No. The 611A is an analog drive with no digital drive bus, so the TechSolve adapter cannot pull current from the NCK. A Hall-effect current transducer on the motor phases feeding a PLC analog input module (e.g., SM 331) is required, with the value exposed as a PLC variable for the adapter to publish.

Is MTConnect a configurable protocol, or is it a fixed standard?

MTConnect is a fixed, fully-defined XML-over-HTTP standard. The protocol itself cannot be configured — the only variability is which data items the publisher (the 840D adapter) exposes. Any MTConnect-compliant agent can consume data from the adapter without per-device client configuration.

What is the recommended sampling period for motor current on a CNC machining center?

1 second (1 Hz) is the typical default for trend logging and historian storage. For collision or chip-load excursion detection, 100–250 ms is the practical lower limit before PROFIBUS read latency and HMI CPU load become constraints. Avoid sampling faster than 100 ms on Power Line hardware.

Where do I obtain the official user manual for the VA-SHA-1.3-0.0 adapter?

TechSolve (a Siemens solution partner) provides the official user manual and configuration reference directly. The adapter is delivered with a project-specific configuration XML that reflects the connected machine axes and the data items required by the end-customer use case. Contact the TechSolve engineering team for the latest manual revision matched to the adapter build installed on the 840D.

Back to blog