Overview
Reading SINUMERIK 840D drive parameters remotely is a recurring requirement in plant IT, service, and digital twin workflows. The controller exposes two distinct data domains that must be treated separately:
- NC variables – machine data (NMD, MMD, GUD, R parameters, tool offsets, alarms) accessible through the NC Active File System and the OPI (Operator Panel Interface).
-
Drive variables – SINAMICS S120 parameter set of the connected drive objects, exposed under the
/DriveVsa/name space and backed up asVSA.BOTbinary archives.
This reference consolidates the supported paths for both 840D Powerline (PL) and 840D Solutionline (SL) controllers, contrasts the file-system layout of each generation, and documents a working approach for C# applications that bridge the MPI/ Ethernet boundary to extract the data as text.
VSA.BOT file is a Siemens-proprietary binary archive and is not human-readable. The only supported way to obtain a textual parameter list is to read drive machine data as OPI variables, export the drive commissioning archive, or read the parameters from the CF card directly on a 840D sl system.Prerequisites
| Component | 840D Powerline (PL) | 840D Solutionline (SL) |
|---|---|---|
| NCU | NCU 561.x / 571.x / 572.x / 573.x with MMC 103 or PCU 50 | NCU 710.x / 720.x / 730.x with PCU 50.5 or PCU 70.1 |
| Drive | SIMODRIVE 611 digital / SIMODRIVE 611 universal | SINAMICS S120 (CU320 / CU320-2 / CX32) |
| HMI | HMI Advanced (MMC 103 / PCU 50) – Classic style | SinuTrain / HMI Operate / Operate V4.x on PCU or PC |
| Bus to PC | MPI bus or Ethernet (CP 8413 / Ethernet CP on MMC 103) | Plant-side X120 Ethernet on the NCU |
| Remote access library | Deltalogic ACCON-AGLink, LibNoDave, or SINUMERIK OPC server | Siemens Access MyMachine /P2P, SINUMERIK OPC UA server |
| Commissioning tool | SIMODRIVE 611 digital commissioning tool (DriveES / DCC) | SINAMICS STARTER (≥ V5.4) or TIA Portal (V15.1 + HSP) |
NC Active File System – What You Can Read Directly
The NC Active File System is the HMI-side view of all NC-side files. Each part program, machine data file, and cycle is stored in a logical directory. The naming convention is _N_<dir>_DIR/_N_<name>_<ext>. Examples that can be pulled from a C# application over MPI using the Deltalogic ACCON-AGLink DLL:
// Examples of NC Active File System paths readable from a 840D
_N_MPF_DIR/_N_PROG1_MPF // main part program
_N_SEA_DIR/_N_SETUP_MPF // setup file
_N_CST_DIR/_N_CYC105_SPF // standard cycle
_N_GUD_DIR/_N_GUD_DEF // global user data
_N_NCK_DIR/_N_NCKDAT_NAM // NC machine data index
_N_NCK_DIR/_N_NCSEARK_NAM // search pointer file
_N_DRV_DIR/_N_DRIVE_DAT // drive machine data file
Reading these files is straightforward: open a logical drive (NCActiveFS) over MPI, navigate the directory, and copy the file to a local buffer. Each file is plain ASCII (ISO 8859) on 840D PL and UTF-8 on 840D SL. Drive parameters are the only meaningful exclusion – see the next sections.
Drive Machine Data on 840D Powerline
Where the parameters live
On 840D PL, drive machine data is stored on the NCK side in NCK machine data of the DRIVE range (MD 1000–1999 area for the SIMODRIVE 611 digital). The values are mirrored to the drive side through the SIMODRIVE 611 digital communication (DSC / PROFIBUS-DP between NCK and the drive modules). They are not stored as files in the NC Active File System – which is why a file-level read returns nothing meaningful for the drive subset.
Access via OPI variables
Drive machine data on 840D PL can be read as OPI variables over the MPI / Ethernet bus. The reference manual SINUMERIK 840D sl/840Di sl/840D/840Di/810D System Variables documents every variable available on the bus. Drive-side variables are grouped in the area $(Dr) or by drive object under the /DriveVsa/Drive/ path, depending on the connector generation.
| OPI area | Content | Typical use |
|---|---|---|
/Nck/MachineData/ |
NCK machine data, including DRIVE range | Read current MD values of drive configuration |
/DriveVsa/Drive/ |
Drive object parameters (control word, status word, setpoints) | Live process values, current controller parameters |
/DriveVsa/DC/ |
Drive Control parameters (r-parameters, p-parameters of SINAMICS) | Read complete p / r parameter set as a list |
The SINUMERIK Connector documentation confirms that drive parameters are exposed through the /DriveVsa/Drive/ and /DriveVsa/DC/ OPI areas. These can be enumerated and read back as a parameter list through the standard OPC UA / SINUMERIK Connector interface or through a third-party ACCON-AGLink client.
Backup to tape file on 840D PL
If a textual list of drive parameters is required, the supported workflow on 840D PL is to perform a tape-format drive backup:
- On HMI Advanced, select Start-up > Drive > Backup / Restore (SIMODRIVE 611 digital tool).
- Choose Save to file; the file is written to the local MMC 103 hard drive or PCU 50 as
VSA.BOT(orVSAxxx.ARCfor older versions). - Copy the file to a network share using the standard Windows networking on the HMI.
- Open the
VSA.BOTin the SIMODRIVE 611 digital commissioning tool to export a readable parameter list (CSV / TXT).
Drive Parameters on 840D Solutionline
On 840D SL, the drive is a SINAMICS S120. Its parameters are organised by drive object (DO): CU, Infeed, Drive (servo/spindle), and optional Terminal Modules. The parameter numbering follows the SINAMICS S120/150 convention (p… writable, r… read-only). They are stored in two locations:
- Volatile and non-volatile on the SINAMICS CU320-2 control unit.
- Persisted to the CF card in
/siemens/sinamics/as*.bakfiles and as the online parameter setacx.
Access via STARTER / TIA Portal
The supported remote read-out is through SINAMICS STARTER (or the TIA Portal with the SINAMICS Startdrive option) connected to the drive over PROFIBUS / PROFINET. The online parameter list is exported with Drive > Load to PG/PC > Save to file, producing a .par or .txt file.
Access via Access MyMachine /P2P
For users who require a vendor-supported file-based read of the CF card, the SINUMERIK Access MyMachine /P2P (PC) software package provides a Windows service that mounts the 840D sl CF card as a network share. After installation:
- Configure the P2P server on the PCU/PC (default port 22 / TCP).
- Connect from a remote client using any SFTP client (WinSCP, FileZilla, scripted PowerShell).
- Navigate to
/siemens/sinamics/data/on the CF card and download the live parameter set.
Access via OPI on 840D SL
840D SL also exposes drive parameters through OPI under /DriveVsa/Drive/ and /DriveVsa/DC/. The SINUMERIK Connector (OPC UA server) uses the same paths and can be used for both PL and SL controllers, which is the cleanest abstraction when integrating with a C# OPC UA client.
Implementation Pattern for a C# Read-Out Client
A typical C# application for remote read-out of NC + drive data uses two parallel paths:
- File path – Deltalogic ACCON-AGLink DLL or LibNoDave for the NC Active File System over MPI/Ethernet.
- Variable path – OPC UA client (Siemens OPC UA .NET stack) connected to the SINUMERIK Connector for the drive parameter list.
Reading the NC Active File System
// C# sketch using ACCON-AGLink (Deltalogic)
using AgLink;
var ag = new AgLinkClass();
ag.OpenMPI("192.168.1.10", 0, 1024); // NCU IP, CP slot, MPI address
ag.ChangeDirectory("_N_MPF_DIR");
var files = ag.GetFileList();
foreach (var f in files)
{
ag.SetRemoteFile(f);
ag.Receive();
var text = ag.TransferBuffer.ToString("ISO-8859-1");
System.IO.File.WriteAllText($"C:\\dump\\{f}", text);
}
ag.Close();
Reading drive parameters via OPC UA
// C# sketch using OPC UA .NET Standard Stack
using Opc.Ua;
using Opc.Ua.Client;
var cfg = new ApplicationConfiguration { /* ... standard UA client config ... */ };
var endpoint = CoreClientUtils.SelectEndpoint("opc.tcp://<NCU-IP>:4840", useSecurity: false);
var session = await Session.Create(cfg, endpoint, false).ConfigureAwait(false);
// Browse /DriveVsa/Drive/
Browser browser = new Browser(session) { ReferenceTypeId = ReferenceTypeIds.HierarchicalReferences };
var driveNodes = browser.Browse(ObjectIds.Server);
foreach (var node in driveNodes)
{
// Read attribute value of each drive parameter node
var value = session.ReadValue(node.NodeId);
Console.WriteLine($"{node.DisplayName} = {value}");
}
session.Close();
Parameter Mapping Reference
| Source domain | Path / Variable | Output format | Tool required |
|---|---|---|---|
| NC machine data | /Nck/MachineData/… | Text (name, value, unit) | ACCON-AGLink or OPC UA |
| NC part program | _N_MPF_DIR/_N_*.MPF | ASCII / UTF-8 plain text | ACCON-AGLink / LibNoDave |
| GUD | /Nck/ProgramUserData/… | Text block | OPC UA |
| R parameters | /Nck/Channel/Compute/R/… | Integer / real values | OPC UA |
| Drive parameters 840D PL | /DriveVsa/Drive/<DO>/… | Name, value, unit, attribute | OPC UA / STARTER via PROFIBUS |
| Drive parameters 840D SL | /DriveVsa/Drive/<DO>/… and /DriveVsa/DC/<OPI> | Name, value, unit, attribute | OPC UA / STARTER / TIA Portal |
| Drive backup (PL) | VSA.BOT on MMC 103 / PCU 50 | Binary, not directly readable | SIMODRIVE 611 digital tool |
| Drive backup (SL) | /siemens/sinamics/data/ on CF card | Binary .bak + .acx; export to .par | STARTER / TIA Portal / Access MyMachine |
Verification Checklist
- Confirm the read-out path returns expected count of parameters. For a SINAMICS S120 with 1 CU, 1 infeed, 2 drives, and 1 TM, expect at minimum 5 drive objects under
/DriveVsa/. - Compare a sampled parameter (e.g.
p2000reference speed) against the value displayed on the HMI Operate diagnostics screen. - Validate the checksum: STARTER and TIA Portal compute a CRC of the parameter set. After a remote read, recompute locally and compare.
- Log each parameter read with a timestamp and operator ID for audit traceability.
- Restore the exported
.parto a test bench and verify the drive accepts it without alarm 1699 (parameter checksum error).
Troubleshooting Matrix
| Symptom | Likely cause | Remediation |
|---|---|---|
VSA.BOT not present on NC Active File System |
Drive backup never performed, or path is _N_DRV_DIR/ not _N_MPF_DIR/
|
Run HMI Advanced drive backup, then look in _N_DRV_DIR/_N_DRIVE_DAT
|
| Drive parameter list empty in OPC UA browse | OPC UA server not licensed, or /DriveVsa/ node not published |
Activate the SINUMERIK Connector option, set driveVsaPublish = true in sinumerik.ini
|
| MPI read works for NC files but disconnects when reading drive variables | Drive variable access requires higher MPI priority; the PLC/CP is starving the bus | Switch to Ethernet CP (e.g. CP 843-1) and use ACCON-AGLink TCP/IP transport |
| Access MyMachine /P2P times out | Firewall blocks TCP 22 on the NCU X120 port | Open X120 inbound on plant firewall, route via dedicated VLAN |
| STARTER shows drive offline | PROFIBUS address mismatch or topology not loaded | Verify address (default 0), reload GSD file, check bus terminator |
| Parameter set checksum mismatch on restore | Backup taken with different firmware version | Reset parameters to factory (p0010=30) and re-commission, or upgrade firmware first |
Field-Proven Caveats
- On 840D PL systems upgraded to HMI Operate, the legacy SIMODRIVE 611 digital tool is still required to convert
VSA.BOTto text – STARTER cannot open it. - OPI variable access on 840D PL is rate-limited; reading all ~600 drive parameters of a 2-axis configuration takes roughly 4–6 seconds over MPI, but only 200–400 ms over Ethernet.
- Some drive parameters are write-only (e.g. command words). The OPI/SINUMERIK Connector will expose them but the read will return a status indicating write-only.
- The SINUMERIK Connector is licensed separately from the SINUMERIK Operate runtime. Without the license, browse of
/DriveVsa/returns an access denied error. - Probe results from 840D systems are stored in parameters and settable GUD, not in dedicated result files – any automated probe-data pipeline must read the appropriate NC variables rather than expect a file drop on the CF card.
Commissioning Steps – End-to-End Read-Out Job
- Verify network reachability from the C# application host to the NCU X120 (or CP 8413 for 840D PL) on TCP 22 (P2P) or TCP 4840 (OPC UA).
- Install the SINUMERIK Connector option and load the license on the NCU.
- Generate an OPC UA client certificate and trust it on the NCU server side.
- Browse
/Objects/on the OPC UA server to confirm the drive namespace is published. - Enumerate
/DriveVsa/Drive/and/DriveVsa/DC/and dump each parameter to a CSV file with header timestamp, drive_object, parameter_name, value, unit, access_rights. - For NC-side data, run the parallel file-based read against
_N_MPF_DIR,_N_NCK_DIR,_N_GUD_DIR. - Compress both dumps into a single ZIP with a manifest, and push to the central parameter archive server.
FAQ
What file path holds drive machine data on 840D Powerline?
Drive machine data on 840D PL is not stored as a file on the NC Active File System. It is exposed as OPI variables under /DriveVsa/Drive/ and /DriveVsa/DC/, or backed up as the binary VSA.BOT archive that must be opened in the SIMODRIVE 611 digital commissioning tool to obtain a readable list.
Can Access MyMachine /P2P read SINAMICS drive parameters on 840D Solutionline?
Yes. Access MyMachine /P2P mounts the 840D sl CF card as an SFTP share. The SINAMICS live parameter set is located under /siemens/sinamics/data/ and can be downloaded directly. For an online (current-value) read of a running machine, use the SINUMERIK Connector OPC UA server or STARTER instead.
Is the VSA.BOT file human-readable?
No. VSA.BOT is a Siemens-proprietary binary compressed archive. It must be opened in the SIMODRIVE 611 digital commissioning tool (or converted to .par in STARTER for 840D sl) before the parameter list is readable.
What is the difference between /DriveVsa/Drive/ and /DriveVsa/DC/ on the OPI?
/DriveVsa/Drive/ exposes the drive-object process data and setpoints (control word, status word, current setpoint, actual speed). /DriveVsa/DC/ exposes the SINAMICS parameter set (p-parameters and r-parameters of the drive control). For a complete drive parameter dump, both areas must be browsed.
Which library is recommended for C# access to NC files over MPI?
The Deltalogic ACCON-AGLink DLL is the most widely used C# library for 840D NC Active File System access over MPI and TCP/IP. For drive parameter access, pair it with the OPC UA .NET Standard Stack against the SINUMERIK Connector; this combination covers both the NC file domain and the drive variable domain from a single C# application.