1. Overview and Application Context
The SINUMERIK 828D CNC control (software version V4.04) integrates a SIMATIC S7-class PLC into the same PPU (Panel Processing Unit) as the NCK and HMI. In a typical machine tool, this integrated PLC executes the machine interlocks, axis enabling, spindle control, and tool-change sequences. When the available free hard-wired I/O on the PPU is exhausted—as is common when retrofitting an additional workholding circuit, hydraulic clamping station, or zero-point clamping system—an external I/O node is required.
The LOGO! 8.2 (6ED1052-xxx08-0BA1 series) is a low-cost logic module with built-in Ethernet RJ45 that supports two non-proprietary industrial protocols on top of standard TCP/IP:
- SIEMENS S7 communication (as client only) over Ethernet TCP/IP, port 102.
- Modbus TCP/IP (client or server), port 502.
LOGO! 8.2 does not support PROFINET IO, PROFIBUS DP, MPI, PPI, or AS-Interface. Therefore, when connecting a LOGO! 8.2 to a SINUMERIK 828D, the only supported path is the S7-communication-on-TCP/IP (RFC 1006 / TPKT) transport, not PROFINET I/O data exchange. This article details the engineering steps to establish that link, configure the data areas, and verify the workholding handshake end-to-end.
2. SINUMERIK 828D PLC Architecture and Communication Constraints
Inside every 828D PPU lives an integrated PLC that is programmed with the SIMATIC S7-300 instruction set. The integrated PLC communicates with the NCK, HMI, MCP (Machine Control Panel), and PP 72/48 I/O modules through a fixed interface defined by the PLC basic program loaded with the SINUMERIK 828D Toolbox. Field-level I/O on PROFINET or PROFIBUS is attached to this integrated PLC.
| Component | Function | Relevance to LOGO! 8.2 Link |
|---|---|---|
| NCK (Numeric Control Kernel) | Path planning, axis interpolation, block decoding. | Not directly reachable by LOGO! 8.2; only via PLC interface (DB2x, M areas). |
| Integrated PLC (S7-class) | Machine interlocks, I/O scanning, axis enable. | LOGO! 8.2 communicates with this PLC as an S7 client. |
| HMI | Operator screen, alarms, machine data. | Indirectly observes the link through PLC tags. |
| PROFINET interface (X100, X101) | Connects to MCP, PP 72/48, drives (Sinamics). | Used by PLC, but not by LOGO! 8.2 directly. |
The 828D integrated PLC exposes a standard S7-300 communication stack on its Ethernet port. To accept unsolicited PUT/GET access from an S7 client such as LOGO! 8.2, the integrated PLC must have Permit PUT/GET access from remote partner enabled in the STEP 7 hardware configuration. The 828D Toolbox does not expose this flag in the standard commissioning screens; the bit must be set in the S7-300 station loaded into the PLC, or the access must be implemented through configured S7 connections (see Section 6).
3. Hardware and IP Addressing Plan
Before touching any software tool, document the addressing scheme. Both nodes must reside in the same IP subnet, and the LOGO! must know the 828D PLC's IP address statically.
| Parameter | SINUMERIK 828D PLC | LOGO! 8.2 |
|---|---|---|
| Default IP (out of box) | 192.168.214.1 (X127 service interface) | 169.254.10.10 (fallback, must be changed) |
| Recommended production IP | 192.168.1.10 (X120 PROFINET, machine network) | 192.168.1.50 |
| Subnet mask | 255.255.255.0 | 255.255.255.0 |
| Gateway | 192.168.1.1 | 192.168.1.1 |
| TSAP (local / remote) for S7 comms | 10.00 (S7 default, rack 0, slot 2) | 10.00 (configurable in LOGO! Soft Comfort) |
ping 192.168.1.10 from a maintenance laptop before configuring the LOGO!.4. Activating S7 Communication on the SINUMERIK 828D PLC
The 828D integrated PLC is a partner that can either (a) accept a passive PUT/GET from any client with permitted access, or (b) participate in a fully configured S7 connection. For simplicity with LOGO! 8.2, use option (a): enable PUT/GET access once in the STEP 7 project that builds the S7-300 station the 828D runs.
- Open the SINUMERIK 828D Toolbox project, navigate to PLC > STEP 7 > S7-300 Station, and double-click the integrated CPU (e.g. CPU 317-2 PN/DP).
- Open Properties > Communication.
- Tick Permit access with PUT/GET from remote partner.
- Save and download the hardware configuration to the integrated PLC using the S7ONLINE access point (MPI/DP or Ethernet, depending on toolbox version).
- Verify on the HMI under Commissioning > PLC > Connection Status that the CPU reports a healthy Ethernet interface with the IP you assigned.
After this flag is set, the LOGO! 8.2 can read and write M, I, Q, and DB areas of the integrated PLC without any further S7 connection blocks (PUT/GET/FB14/FB15) on the 828D side. The integrated PLC behaves like a standard S7-300 CPU in this mode.
5. Configuring the LOGO! 8.2 as an S7 Client
LOGO! Soft Comfort V8.x is the engineering tool. The S7 client is configured under Tools > Ethernet Connections or, in the connection editor, by adding an S7 Connection block.
- Start LOGO! Soft Comfort, open or create the program for the LOGO! 8.2 BM with Ethernet.
- From the connection toolbar, drop an S7 Connection onto the project workspace. Maximum 8 S7 connections are supported on LOGO! 8.2 (firmware FS:04 and later).
- Open the connection properties and fill in:
- Partner IP Address: 192.168.1.10 (the 828D PLC).
- Partner TSAP: 10.00 (rack 0, slot 2, standard S7-300).
- Local TSAP: 10.00 (default; can be any unused combination).
- Read / Write cycle trigger: select a LOGO! flag, e.g. M8, pulsed by a 200 ms clock generator. This becomes the heartbeat that the 828D can monitor for link-health diagnostics.
- Add the data exchange points. The LOGO! 8.2 can read up to 32 bytes and write up to 32 bytes per connection. The typical workholding mapping is:
-
Read from 828D (logo receives):
DB100.DBB0= workholding command word,DB100.DBB1= clamp pressure setpoint. -
Write to 828D (logo sends):
DB101.DBB0= status byte (clamped/unclamped/pressure-ok/fault),DB101.DBB1= measured pressure.
-
Read from 828D (logo receives):
- Compile and download to the LOGO! 8.2 BM through Ethernet. Enter the LOGO!'s IP into LOGO! Soft Comfort's transfer dialog.
6. Alternative: Configured S7 Connection on the 828D Side
If the integrated PLC's PUT/GET access flag cannot be left open (e.g. locked-down plant security policy), the connection can be made initiated by the 828D side instead. In that case, drop a configured S7 connection in the STEP 7 NETPRO and program the PUT/GET function blocks (FB14 GET, FB15 PUT) inside the 828D PLC. The LOGO! 8.2 then becomes the S7 server rather than the client. Because LOGO! 8.2 firmware exposes its internal variables on the S7 server side, the 828D PLC can use FB14/FB15 to fetch those values.
| Approach | Initiator | PLC-side effort | LOGO! side effort | Recommended when |
|---|---|---|---|---|
| Permitted PUT/GET + LOGO! as client | LOGO! 8.2 | One checkbox in HW config | Connection block in Soft Comfort | Default, fastest commissioning. |
| Configured S7 connection + 828D as client | 828D PLC | NETPRO entry, FB14/FB15 instance DBs | LOGO! acts as server, no client config | Plant security policy restricts passive access. |
| Modbus TCP, LOGO! as client | LOGO! 8.2 | MB_CLIENT in 828D PLC + permission | Modbus master table | When using a non-Siemens partner instead. |
7. Data Mapping Example: Workholding Clamping Station
The workholding circuit is logically a slave to the NC: the NC requests clamp/unclamp, the 828D PLC arbitrates, and the LOGO! 8.2 controls the hydraulic valves, pressure sensors, and proximity switches locally on the clamping fixture. Reserve a dedicated data block on the 828D for the LOGO! interface; do not mix LOGO! tags with NCK-PLC interface DBs (DB10, DB11, DB20, DB21, DB31, etc.) because the basic program writes to those in a fixed cycle and they may be overwritten.
7.1 DB100 — 828D → LOGO! (commands)
DATA_BLOCK DB100
TITLE 'LOGO! 8.2 Workholding - Commands'
STRUCT
bCommand : BYTE; // 0 = idle, 1 = clamp, 2 = unclamp, 3 = reset
bPressureSP : BYTE; // Setpoint pressure in bar (0..200)
bReserved1 : BYTE;
bReserved2 : BYTE;
wTimeout : WORD; // Max clamp time in 100 ms units
END_STRUCT
END_DATA_BLOCK
7.2 DB101 — LOGO! → 828D (status)
DATA_BLOCK DB101
TITLE 'LOGO! 8.2 Workholding - Status'
STRUCT
bStatus : BYTE; // Bit0 clamped, Bit1 unclamped, Bit2 pressureOK,
// Bit3 fault, Bit4 linkOk, Bit5..7 reserved
bPressurePV : BYTE; // Measured pressure in bar
bDiagCode : BYTE; // 0 = OK, 1 = timeout, 2 = sensor missing, ...
bLinkAge : BYTE; // Increments on each successful cycle, used for liveness check
END_STRUCT
END_DATA_BLOCK
In the 828D PLC, monitor DB101.bLinkAge and consider the LOGO! link dead if the counter does not increment within 1 s. When dead, the NC must enter a hold-to-run state and display alarm 700100 "Workholding link lost". Place this alarm in the user PLC program, not in the LOGO!.
8. Commissioning Procedure and Verification
- Power the 828D, let NCK and PLC come up. Confirm HMI shows OPERATE or READY state.
- Connect the LOGO! 8.2 to the same physical Ethernet switch as the 828D's PROFINET port, or wire point-to-point to X120 with a patch cable.
- From the 828D HMI, open Commissioning > PLC > Variable View and force the following:
- Set DB100.bCommand = 1 (clamp). Observe that the LOGO!'s output for the clamp solenoid energises.
- Apply air/hydraulic pressure to the fixture. Watch DB101.bStatus bit 0 (clamped) and bit 2 (pressureOK) come true.
- Verify DB101.bLinkAge increments once every 200 ms in cross-reference view.
- From LOGO! Soft Comfort in online mode, open the watch table for the S7 connection and confirm the read/write timestamps are inside the 200 ms cycle.
- Run a worst-case test: cycle the LOGO! 8.2 power while the 828D is in AUTO. The PLC must drop into the link-dead alarm and prevent the next NC start. Restore power, confirm link re-establishes within 2 s, and clear the alarm from HMI.
9. Troubleshooting Matrix
| Symptom | Likely Root Cause | Diagnostic Step | Fix |
|---|---|---|---|
| LOGO! Soft Comfort reports "No connection to S7 partner". | Wrong partner IP or TSAP, or 828D PLC is not on the configured IP. | Ping 828D from laptop on same subnet; check PLC Ethernet LED. | Correct IP / TSAP, or restore 828D default IP via X127 service interface. |
| S7 connection establishes but DB read returns 0. | PUT/GET access not enabled on 828D PLC. | On 828D HMI, check PLC > Diagnostics > Communication. | Tick "Permit access with PUT/GET" and re-download HW config. |
| Intermittent link drops, DB101.bLinkAge freezes for > 1 s. | Broadcast storm on PROFINET, or LOGO! 8.2 firmware < FS:04. | Check LOGO! firmware version in device menu; capture with Wireshark on tap. | Update LOGO! 8.2 firmware to FS:05 or later; isolate the LOGO! on a separate switch port with filtering. |
| Workholding fires during NC reset. | LOGO! outputs latched across PLC stop. | Check the LOGO! program: outputs must be conditional on the 828D command, not on a startup-only contact. | Re-engineer the LOGO! ladder so all hazardous outputs require the cyclic bCommand from DB100 AND a non-zero link age. |
| Data written by 828D is overwritten by NCK-PLC basic program. | Shared use of DB10/DB11/DB20/DB21/DB31. | Cross-reference the addresses in the S7 project. | Move LOGO! interface to user DBs (DB100/DB101) and reserve them in the symbol table. |
| Connection is good in commissioning but fails in production. | Plant firewall between IT and OT subnets, or MCP traffic oversaturating the port. | Check the routing of the X120 subnet in plant network. | Apply rule to allow TCP port 102 between LOGO! and 828D only; rate-limit PROFINET multicast. |
10. Safety Considerations for CNC Workholding
- Hard-wire the workholding pressure switch directly into the 828D's safe I/O (or a safety relay) and let the NCK monitor it via the PLC interface. The LOGO!'s pressure-OK bit is a convenience signal, not a safety proof.
- Implement a hold-to-run enforcement in the 828D PLC: if DB101.bLinkAge does not increment for more than 1 s, lock the start of axis motion via the NCK interface (DB31, DBX6.0 etc., as per the specific axis DB layout in the 828D basic program).
- Validate the entire safety chain on first commissioning and annually, following the machine builder's verification protocol.
11. References for Further Verification
Refer to the LOGO! 8.2 system manual from Siemens (6ED1050-1AA00-0BA8 series documentation) for the exact S7 connection block parameters and for the maximum number of simultaneous S7 connections per firmware revision. For the 828D side, consult the SINUMERIK 828D PLC Programming Manual and the SINUMERIK 828D Toolbox Manual for the integrated PLC hardware configuration and the location of the PUT/GET access flag. The STEP 7 V5.7 / TIA Portal S7-300 Communication manual is the canonical reference for the underlying S7 protocol behavior, including the TSAP addressing scheme used in Section 3.
Does LOGO! 8.2 support PROFINET IO to a SINUMERIK 828D?
No. LOGO! 8.2 supports Ethernet TCP/IP with the Siemens S7 protocol and Modbus TCP/IP only. It does not act as a PROFINET IO device, so PROFINET cyclic I/O exchange with the 828D is not possible. Use the S7-communication-on-TCP/IP path described in this article.
What firmware version of LOGO! 8.2 is required for stable S7 communication?
Use firmware FS:04 or later. Earlier FS versions are limited to a single S7 connection and show link age glitches when scaled to workholding cycle times. FS:05 is recommended for production.
Can the 828D's integrated PLC function as an S7 client toward the LOGO! 8.2?
Yes, by configuring an S7 connection in NETPRO and programming FB14 (GET) and FB15 (PUT) in the STEP 7 project. Use this method when the PLC's "Permit PUT/GET access from remote partner" flag is not allowed by plant security policy.
Which IP and port does S7 communication use between LOGO! 8.2 and the 828D?
S7 communication runs over TCP port 102 (ISO-on-TCP, RFC 1006 / TPKT). Both nodes must be on the same IP subnet; default 828D service IP is 192.168.214.1 on X127, but use the production PROFINET port IP for the LOGO! link.
Is it safe to use a LOGO! 8.2 for workholding interlocks on a CNC?
The LOGO! 8.2 is a non-safety logic module. It can be used to expand I/O and to handle non-safety commands, but a loss-of-link condition must drop the machine into a safe state enforced by the 828D's safety-related I/O and the NCK, not by the LOGO! itself. Perform a risk assessment per ISO 12100 / ISO 16090-1.
How fast is the data refresh between LOGO! 8.2 and the 828D PLC?
Each read or write cycle of 32 bytes completes in 10–30 ms over a quiet network. With a 200 ms trigger from a LOGO! clock generator, expect end-to-end command-to-status latency of about 220–260 ms. Do not base any safety timing on the first cycle after a power-up of the LOGO!.