Editing SINUMERIK 828D PLC Code: On-Screen and External Tools

David Krause14 min read
HMI / SCADASiemensTutorial / How-to
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

The SINUMERIK 828D CNC integrates a SIMATIC S7-200 compatible PLC directly inside the controller. This integrated PLC handles all machine-level I/O: spindle enable, axis enable, tool changer, coolant, safety circuits, feed hold, and M/H/T auxiliary functions. The user program is a ladder logic project stored on the CompactFlash card of the PPU (Panel Processing Unit) and is loaded at boot.

Two parallel paths exist for editing that user program:

  • On the HMI using the SINUMERIK Operate Ladder Add-On Tool, also referred to as PLC LADDER ON. The tool is an OEM-loaded option that exposes the live PLC on the operator panel and lets you change coil/register values from the keyboard.
  • On a Windows PG/PC using Programming Tool PLC828 (sometimes listed as PLC-Programming-Tool 828D). The tool is part of the SINUMERIK Toolbox CD and connects over Ethernet to the controller's X130 service interface or to a company network port.

The integrated PLC of the 828D is documented by Siemens as a SIMATIC S7-200 subsystem. It is not programmable in TIA Portal — TIA targets S7-1200/S7-1500. Always use the S7-200-compatible editor shipped with the 828D. Reference: SINUMERIK 828D Grinding — Editing the PLC user program (ID 109994219).

Prerequisites

Item Requirement
Controller SINUMERIK 828D PPU (any variant: 828D BASIC, STANDARD, TURNING, MILLING, GRINDING). Firmware SW 4.x and earlier used S7-200; SW 4.7 SP2 and later add PLC-Pro and increased scope.
Toolbox CD SINUMERIK 828D Toolbox (delivered with the original system). Contains Programming Tool PLC828, PLC Basic Program, and the add-on installers.
Ladder Add-On Tool OEM option installed on the PPU. The license is bound to the CF card serial number; if missing it must be ordered through the machine OEM (not Siemens direct).
External PG/PC Windows 7 SP1 / Windows 10 with the PLC828 programming tool installed. .NET 2.0/3.5 and a free USB or Ethernet port.
Cable RJ45 Ethernet, Cat 5e or better. Direct patch cable if connecting PG directly to X130; standard patch cable for switch connection.
Access level Manufacturer (password 1111) or higher to perform writes to the live PLC. Service level (password 2222) is read-only for status but cannot save project changes.
Backup CF card image of the active commissioning archive before any write, plus a serial-mode PLC project backup.

Integrated PLC Architecture of the 828D

The 828D PLC is implemented as a SIMATIC S7-200 CPU with a fixed address layout. The user-relevant memory areas are:

Area Mnemonic Range used on 828D Purpose
Inputs I I0.0 – I7.7 (byte 0–7) on-board; I8.0+ on PROFINET/PROFIBUS slaves Machine inputs (limit switches, pushbuttons, sensors)
Outputs Q Q0.0 – Q7.7 on-board; Q8.0+ on fieldbus Contactor drives, valves, indicator lamps
Markers (internal) M M0.0 – M255.7 Auxiliary flags, sequence latches
Data Block (NC↔PLC interface) DB DB10 (NCK signals), DB20 (PLC→NCK), DB30–DB39 (axis signals), DB50 (tool change), DB71–DB78 (HMI) and user DBs 1–127 Structured data exchange with the NC kernel
Timers / Counters T / C T0–T255, C0–C255 Standard S7-200 TON/TOF and CTU/CTD
Special Markers SM SM0.0 – SM299.7 (only a subset exposed) System flags (first cycle, always-on, error codes)

The user program is split into OB1 (main cyclic), SBR (subroutines) and INT (interrupt routines) — identical to the S7-200 toolchain. The PLC runs cyclically at the OB1 scan rate and is started by the NC kernel in coordinated mode.

Method 1 — Editing PLC on the HMI (Ladder Add-On Tool)

This is the fastest path when the controller is in front of you and the Ladder Add-On license is present. It is also the only path that does not require an external PG/PC. The tool exposes two functions: online monitoring of the rung with live signal state, and direct editing of selected variables (inputs, outputs, markers, DB words and DB bits) from a STATUS list.

Step 1 — Verify the Ladder Add-On Tool is installed

  1. Power on the 828D and wait for the SINUMERIK Operate main screen.
  2. Press Menu SelectCommissioning → enter password 1111 (Manufacturer).
  3. Press Menu SelectDiagnosticsSystemVersion.
  4. Scroll the installed options list. Look for the entry PLC LADDER ON or Ladder Add-On Tool. If the entry exists, the license is present and active. If the entry is missing, the option is not installed and the only on-screen action you can do is read-only STATUS.
Note: The Ladder Add-On Tool is an OEM-scope option. Siemens does not sell it as a stand-alone license; the machine builder must enable it. Older 828D PPU shipments had it pre-installed. Newer retrofits and service exchanges may require a CF-card re-image through the OEM.

Step 2 — Open the PLC LADDER ON tool

  1. From the main HMI screen press SETUP (or the Setup softkey depending on Operate version).
  2. Press the PLC softkey. The PLC LADDER ON window opens.
  3. The default view is the live ladder. Use the page keys or the mouse wheel to scroll. Signal states are color-coded: green = TRUE, grey = FALSE, blue = forced.

Step 3 — Open the STATUS LIST

  1. Press the STATUS LIST softkey.
  2. Press the SET ADDRESS softkey.
  3. Select the address type: I, Q, M, DB or SM from the dropdown.
  4. Enter the address in the value field. Format examples:
    • Bit: I0.0, Q7.3, M100.5, DB10.DBX0.0
    • Byte/Word/DWord: DB20.DBB0, DB20.DBW10, DB20.DBD100
    • Integer/Real: DB30.DBW40 (INT), DB50.DBD80 (REAL)
  5. Press ACCEPT. The cursor jumps to the specified address row in the STATUS LIST and shows the current value, format (BOOL, HEX, BIN, DEC, FLOAT) and the read/write permission.

Step 4 — Modify a value

  1. With the cursor on the desired row, press the CHANGE softkey. The RW (Read/Write) field becomes editable.
  2. Type the new value. For BOOL enter 0 or 1. For BYTE enter 0–255. For WORD enter 0–65535. For DWORD/REAL enter the full decimal or real value.
  3. Press ACCEPT. The new value is written immediately to the live PLC.
  4. For bit-level writes, the change toggles the operand; the same change is reflected in the active rung in the LADDER view within one OB1 scan.
Safety: Force/Modify writes from STATUS LIST are not retained after a power cycle. They are also not saved with the PLC project — they only change the volatile image. To make a change permanent you must edit the source project and download it via the PLC828 tool.

Step 5 — Save and exit

Press BACK or the area-change softkey to leave the PLC LADDER ON tool. The write is not saved to the CF card automatically; it lives only in the volatile S7-200 image. Treat the HMI STATUS LIST as a debugging surface, not a project editor.

Method 2 — Editing with Programming Tool PLC828 (External PG/PC)

For real code changes — adding a rung, modifying a timer preset, restructuring logic — you must edit the project on a Windows PC. The Siemens-supplied tool is Programming Tool PLC828 (PT 828D). It is a SIMATIC S7-200 compatible editor that communicates with the integrated PLC over Ethernet.

Step 1 — Install the software

  1. Locate the SINUMERIK 828D Toolbox CD that shipped with the system. The root folder contains: Programming Tool PLC828, PLC Basic Program, Add On Tools, Configuration.
  2. Run the installer for Programming Tool PLC828. Required components: .NET 2.0/3.5, the S7-200 communication DLL, the Microsoft Access runtime used for symbol tables.
  3. Accept the default install path (typically C:\Siemens\S7-200\Programming Tool PLC828).
  4. If a license key was provided on a USB stick, plug it in and run the AuthorW.exe license manager once.
Note on availability: Siemens no longer ships the Toolbox CD as a physical disc with new controllers. The PT PLC828 installer is hosted on the Siemens Industry Online Support portal under entry ID 109994219 and related toolset pages. It is also frequently mirrored on the OEM's service DVD. A valid service contract is normally required to obtain the installer files.

Step 2 — Establish the Ethernet connection

The 828D PPU exposes two relevant Ethernet ports: X130 (the company/service network, default IP 192.168.214.1) and on the operator panel front a service / X127 port (default IP 192.168.215.1). Either is suitable for PLC programming.

  1. Set the PG/PC Ethernet adapter to a static address in the same subnet:
    • For X130: 192.168.214.100, mask 255.255.255.0
    • For X127: 192.168.215.100, mask 255.255.255.0
  2. Plug a patch cable from the PG into the chosen PPU port. Direct PG↔PPU requires a crossover-capable adapter or a modern auto-MDIX port — both 828D ports are auto-MDIX, so a straight cable works.
  3. Verify the link with ping 192.168.214.1 (or 192.168.215.1). A reply confirms the TCP path is up.

Step 3 — Open the project and go online

  1. Launch Programming Tool PLC828.
  2. Click FileOpen and load the matching *.S7P project file. If you do not have the source, click PLCUpload Station to PG to read the live program out of the controller and save it locally as a new project.
  3. Click PLCCommunications → set the remote address (e.g. 192.168.214.1) and select TCP/IP.
  4. Click Connect. The tool reads the PLC type (S7-200), firmware version and the user program size. A green status bar at the bottom confirms the link.

Step 4 — Make the change and download

  1. Open the relevant program block (OB1, SBR0, SBR1, …) by double-clicking it in the project tree.
  2. Edit the rung: insert contacts, coils, timers, comparators, math blocks. The toolset matches STEP 7 Micro/WIN: drag from the instruction tree on the left, drop into the network editor.
  3. Compile with PLCCompile. Errors are reported in the Output window; the program is not downloaded until compile is clean.
  4. Click PLCDownload. Confirm the warning dialog. The tool will first stop the PLC, write the new program, then restart it. Expect a brief drop in I/O — the 828D's NC remains running but machine outputs go to safe state for 1–2 scan cycles.
  5. Save the modified project to the PG/PC with FileSave As to a versioned path.
Critical: Always keep the original uploaded project as backup_original.S7P before any edit. Live PLC downloads cannot be undone from the controller — there is no rollback unless the project on the CF card is restored.

Step 5 — Archive the new project to the CF card

  1. From SINUMERIK Operate press Menu SelectCommissioningPLCPLC Archiving.
  2. Insert a USB stick formatted FAT32 with enough free space (≥ 64 MB recommended).
  3. Select Series commissioningCreate archive. The tool writes both the current PLC project and the basic program to a date-stamped folder.
  4. After download, do a full series commissioning archive to ensure the modified PLC is the one written to the next commissioning backup.

Method 3 — Direct CF Card Editing (Offline)

For service emergencies where no PC or HMI tool is available, the PLC project can be edited off the CF card on a Windows PC. The card image contains the project at card\plc\proj.s7p (older builds) or in a hashed path under card\oem\sinumerik\hmis\plc\ on newer SW 4.7+ systems.

  1. Power down the 828D and remove the CF card from the PPU.
  2. Insert the CF into a Windows reader.
  3. Make a full .img of the card using Win32 Disk Imager or HDD Raw Copy. This is the safety net.
  4. Copy the project file out, edit with PT PLC828, copy back, and verify the SHA256 of every file in the modified card.
  5. Re-seat the card and boot. The PLC loads the modified project.
Warning: CF card edits bypass the controller's signature check on older SW versions. Newer SW 4.7+ builds verify the SHA of the project on every boot and will refuse a tampered file. Use CF editing only when the on-line tools are unavailable and the controller's SW version is confirmed to allow it.

Connection Path Decision Matrix

Scenario Recommended path Default port / IP Tool
Quick value toggle in DB during fault finding HMI STATUS LIST On the operator panel PLC LADDER ON (Ladder Add-On Tool)
Add or modify a rung, timer or function External PG/PC over Ethernet X130 / 192.168.214.1 Programming Tool PLC828
Machine on a closed OEM network, no X130 access Front service port X127 / 192.168.215.1 Programming Tool PLC828
No PG/PC, no add-on tool, but PG available remotely PG access via service interface with OEM VPN X130, port 102 (S7comm) Programming Tool PLC828
Controller headless or no HMI access CF card offline edit + reseat Direct CF read Programming Tool PLC828 + CF reader

Verification Procedure

After any PLC edit, run the following verification sequence before returning the machine to production:

  1. Compile clean: PT PLC828 reports zero errors and zero warnings in the Output window.
  2. Online compare: PLCComparePG vs PLC must show identical rungs. Any difference means the download did not complete.
  3. First scan: SM0.1 (first-cycle flag) must pulse for one OB1 cycle. Observe via STATUS LIST: SM0.1 reads 1 for ~30 ms after restart.
  4. Watchdog clear: SM0.6 (alternating flag) toggles every scan; if it stops, the PLC has entered STOP. Check PLC status LED on the PPU — solid red = STOP, flashing = fault, off = RUN.
  5. I/O scan: toggle a known input (e.g. cycle start) on the operator panel and verify the matching M or DB bit changes via STATUS LIST or PT PLC828 status chart.
  6. NC handshake: with the machine in JOG, vary the feed-rate override potentiometer and watch DB10 (NCK signals) — the override word must track within 100 ms.
  7. Sign-off archive: create a Series commissioning archive and store on a labelled USB stick tied to the machine's serial number.

Troubleshooting Matrix

Symptom Likely cause Fix
No PLC LADDER ON softkey in Setup Ladder Add-On Tool license not present on CF Contact the machine OEM to enable the option; license is CF-card bound
STATUS LIST shows the value but the CHANGE field is grey Active access level is Service (2222) not Manufacturer (1111) Enter Manufacturer password; only Manufacturer and above can write
PT PLC828 connect dialog times out Wrong subnet, firewall on PG blocks TCP/102, or X130 disabled Set PG to 192.168.214.x, allow 102/tcp, check net view \\192.168.214.1
Download stops at 47% with PLC Busy NC is in a state that blocks PLC writes (e.g. active part program) Reset the NC, switch to JOG with no program selected, retry
PLC enters STOP after download, SF LED on Compile error in user logic, or I/O module removed Read PLC diagnostics buffer via PLCInformationClear; cross-check with PT PLC828 status
Modified value reverts on power cycle STATUS LIST writes are volatile Use PT PLC828 to modify the source project and download — STATUS LIST is debug-only
PG can ping the PPU but no PLC connection S7-200 protocol filtered on the company switch Use the dedicated X127 service port; isolate the PG from the production VLAN
Project file is corrupt on the CF Card was removed mid-write or filesystem corruption Restore from the most recent series-commissioning archive; if none, re-image CF from the OEM image and reload the project from the backup

Safety and Access-Level Reminders

  • Siemens documents the integrated PLC as part of the basic program. The basic program is supplied by the OEM and is normally write-protected. User modifications should target user SBRs, not the basic program OB100 / OB1 segments.
  • Modifying safety-relevant logic (Emergency Stop chain, axis safe-stop, guard interlock) is the responsibility of the OEM. The 828D's integrated PLC is not a safety PLC (no SIL/PLe capability). For functional safety use a separate SIRIUS 3SK safety relay or a SIMATIC F-CPU coupled through PROFIsafe.
  • Always log changes: maintain a written PLC_Change_Log.xlsx with date, machine serial, software version, change description, and engineer signature. This is required for CE re-assessment under ISO 13849-1 and for FDA 21 CFR Part 11 regulated environments.

Frequently Asked Questions

Can I program the SINUMERIK 828D PLC with TIA Portal?

No. The 828D's integrated PLC is a SIMATIC S7-200 subsystem and uses the legacy STEP 7 Micro/WIN-style editor. TIA Portal targets S7-1200 and S7-1500 only. Use Programming Tool PLC828 instead.

What is the difference between PLC LADDER ON and the Ladder Add-On Tool?

They are the same feature. PLC LADDER ON is the softkey name on SINUMERIK Operate; Ladder Add-On Tool is the option name on the version/licence screen. Both refer to the on-board HMI editor that lets you monitor and modify live signals without an external PG/PC.

Where can I download the Programming Tool PLC828 software today?

It is hosted on Siemens Industry Online Support under the SINUMERIK 828D toolset. Search entry ID 109994219 and adjacent toolset pages. Older 828D Toolbox CDs include the same installer. A Siemens service agreement is typically required for download.

How do I change a DB bit value permanently on a 828D?

Open the project in Programming Tool PLC828, navigate to the data block, edit the initial value, compile, and download. STATUS LIST writes are volatile and are lost on power cycle or NC reset.

Why is the Ladder Add-On Tool missing on my controller?

The option is OEM-scoped and tied to the CF card licence. Newer 828D PPUs do not ship with it enabled by default. The machine builder (OEM) must enable it via the CF image or a separate licence enable file. Siemens does not sell the option directly to end users.

Back to blog