Native S7 Protocol Communication
Ignition Siemens S7 Driver: Connect S7-1200 and S7-1500 PLCs
The Ignition Siemens S7 driver provides native connectivity to the entire Siemens S7 family, including S7-300, S7-400, S7-1200, and S7-1500 PLCs. Read and write data blocks, merkers, inputs, and outputs over Ethernet without any additional middleware or OPC server.
Overview
The Ignition Siemens S7 driver communicates directly with Siemens PLCs over Ethernet using the native S7 protocol (ISO-on-TCP, RFC 1006). This eliminates the need for third-party OPC servers and provides fast, reliable access to all PLC memory areas including data blocks, merkers, inputs, outputs, counters, and timers.
Whether you are integrating legacy S7-300/400 controllers or modern S7-1200/1500 with optimized block access, the Ignition Siemens S7 driver handles the connection seamlessly. Configure rack and slot parameters, map data block addresses to Ignition tags, and start monitoring your Siemens infrastructure in minutes.
Key Benefits
- Native S7 protocol without third-party OPC servers
- Support for S7-300, S7-400, S7-1200, and S7-1500 families
- Direct data block, merker, input, and output access
- Optimized block access for S7-1200/1500 controllers
- Array and UDT (User-Defined Type) tag support
Siemens S7 Communication Architecture
The Ignition Siemens S7 driver connects to PLCs over PROFINET/Ethernet using the S7 protocol, reads data blocks and memory areas, and exposes them as Ignition tags for Perspective and Vision clients.
┌─────────────────────────────────────────────────────────────────────┐
│ Siemens PLC Layer │
│ │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ S7-300 │ │ S7-400 │ │ S7-1200 │ │ S7-1500 │ │
│ │ (Legacy) │ │ (Legacy) │ │ │ │ │ │
│ └─────┬─────┘ └─────┬─────┘ └─────┬─────┘ └─────┬─────┘ │
│ │ │ │ │ │
└────────┼──────────────┼──────────────┼──────────────┼───────────────┘
│ │ │ │
└──────────────┴──────┬───────┴──────────────┘
│
PROFINET / Industrial Ethernet
(S7 Protocol / ISO-on-TCP)
│
┌──────────────────────────────┼──────────────────────────────────────┐
│ Ignition Gateway │
│ │ │
│ ┌───────────────┴───────────────┐ │
│ │ Siemens TCP Device Driver │ │
│ │ (S7 Communication Driver) │ │
│ └───────────────┬───────────────┘ │
│ │ │
│ ┌───────────────┴───────────────┐ │
│ │ Tag Provider / OPC Tags │ │
│ │ DB1.DBD0 DB1.DBW4 MW100 │ │
│ └───────────────┬───────────────┘ │
│ │ │
└──────────────────────────────┼──────────────────────────────────────┘
│
┌────────────────┼────────────────┐
│ │ │
┌────────┴──────┐ ┌──────┴───────┐ ┌──────┴───────┐
│ Perspective │ │ Vision │ │ Historian │
│ Clients │ │ Clients │ │ & Reports │
└───────────────┘ └──────────────┘ └──────────────┘
Configuration Steps
Step 1: Enable PUT/GET Access on the PLC in TIA Portal
For S7-1200 and S7-1500 PLCs, you must enable the PUT/GET communication access in TIA Portal. Open your PLC project, navigate to the device properties, and enable the "Permit access with PUT/GET" option under Protection & Security. This allows external clients like Ignition to read and write PLC memory areas via the S7 protocol.
# TIA Portal Configuration Path
# ─────────────────────────────────────────────────────────
# 1. Open TIA Portal > Your Project > Device Configuration
# 2. Select your S7-1200 or S7-1500 CPU
# 3. Navigate to:
# Properties > General > Protection & Security
# > Connection mechanisms
#
# 4. Check: "Permit access with PUT/GET communication
# from remote partner"
#
# 5. Download the updated configuration to the PLC
#
# Note: S7-300/400 PLCs have PUT/GET enabled by default
# and do not require this step.Step 2: Add a Siemens TCP Device Connection in Ignition
In the Ignition Gateway, create a new device connection using the Siemens TCP driver. Configure the PLC hostname or IP address, rack number, and slot number. For S7-1200 and S7-1500, the rack is typically 0 and the slot is 1. For S7-300/400, verify the physical rack and slot in your hardware configuration.
# Ignition Gateway > Config > OPC UA > Device Connections
# ─────────────────────────────────────────────────────────
# Driver: Siemens TCP
# Name: Siemens_S7_Line1
# Hostname: 192.168.1.10
# Rack: 0
# Slot: 1 # S7-1200/1500 = Slot 1
# # S7-300 = Slot 2 (CPU in slot 2)
# # S7-400 = depends on config
#
# Advanced Settings:
# ─────────────────────────────────────────────────────────
# Communication Timeout: 2000 ms
# Reconnect Rate: 5000 ms
# Max PDU Size: 480 # auto-negotiated
# Tag Poll Rate: 1000 ms (default)Step 3: Map Data Blocks and Memory Areas to Tags
Create OPC tags in Ignition that reference Siemens S7 memory addresses. The Siemens S7 driver supports data block addressing (DB), merkers (M), inputs (I), outputs (Q), counters (C), and timers (T). Use the standard S7 address syntax to map each PLC variable to an Ignition tag for real-time monitoring and control.
# Siemens S7 Tag Address Syntax
# ─────────────────────────────────────────────────────────
# Data Blocks:
# DB1.DBD0 → REAL at byte offset 0 in DB1
# DB1.DBW4 → INT (16-bit) at byte offset 4 in DB1
# DB1.DBB8 → BYTE at byte offset 8 in DB1
# DB1.DBX10.0 → BOOL at byte 10, bit 0 in DB1
# DB5.DBD100 → DINT at byte offset 100 in DB5
#
# Merkers (Flags):
# MW100 → Merker Word at byte 100
# MD200 → Merker Double Word at byte 200
# M50.3 → Merker Bit 3 at byte 50
#
# Inputs / Outputs:
# IW0 → Input Word at byte 0
# QW0 → Output Word at byte 0
# I0.0 → Input Bit 0 at byte 0
# Q4.5 → Output Bit 5 at byte 4
#
# Arrays (Ignition syntax):
# DB1.DBD0<REAL[10]> → Array of 10 REALs starting at DB1.DBD0Step 4: Configure Optimized Block Access for S7-1500
S7-1500 PLCs use optimized block access by default, which prevents external clients from reading data blocks by absolute address. To allow the Ignition Siemens S7 driver to access data blocks, you must disable optimized block access for each DB in TIA Portal, or use symbolic access. Disabling optimized access switches the DB to standard (non-optimized) mode with fixed byte offsets.
# TIA Portal: Disable Optimized Block Access
# ─────────────────────────────────────────────────────────
# 1. Open TIA Portal > Your Project > Program blocks
# 2. Right-click on the Data Block (e.g., DB1)
# 3. Select "Properties"
# 4. Under "Attributes":
# Uncheck: "Optimized block access"
#
# 5. Recompile the block and download to PLC
#
# ─────────────────────────────────────────────────────────
# Important Notes:
# - S7-1200 v4+ also supports optimized blocks
# - Each DB must be configured individually
# - After disabling, byte offsets become visible
# in the TIA Portal variable table
# - Standard (non-optimized) DBs use absolute addressing
# compatible with the Ignition Siemens TCP driver
# - Alternatively, use OPC UA on the PLC side for
# symbolic access to optimized blocksKey Features
Native S7 Communication
Direct communication with Siemens PLCs using the native S7 protocol over Ethernet. No third-party OPC server required, reducing complexity and licensing costs while improving performance and reliability.
Data Block Addressing
Full support for Siemens S7 addressing syntax including data blocks (DB), merkers (M), inputs (I), outputs (Q), counters (C), and timers (T). Map any PLC memory area to Ignition tags using familiar S7 notation.
S7-1200/1500 Support
Full compatibility with the latest Siemens S7-1200 and S7-1500 controllers, including configuration guidance for PUT/GET access and optimized block access settings in TIA Portal.
Array & UDT Support
Read and write arrays of values and User-Defined Types (UDTs) from Siemens data blocks. Efficiently transfer large blocks of structured data in a single request, reducing communication overhead.
Use Cases
Automotive Manufacturing Lines
Monitor and control Siemens S7-1500 PLCs across welding, painting, and assembly lines in automotive plants. Centralize production data from hundreds of controllers into a unified Ignition SCADA platform for real-time OEE tracking and quality management.
Pharmaceutical Production
Integrate Siemens S7-1200 controllers managing batch processes, clean-in-place (CIP) systems, and environmental monitoring in pharmaceutical facilities. Ensure 21 CFR Part 11 compliance with audit trails and electronic signatures through Ignition.
Packaging and Bottling
Connect Siemens S7 PLCs controlling filling machines, labelers, case packers, and palletizers on high-speed packaging lines. Achieve real-time line efficiency monitoring and rapid changeover management with Ignition dashboards.
Technologies
Siemens S7-1200
Compact PLC for standalone and networked automation tasks. Ideal for small to medium-sized applications with built-in PROFINET interface and TIA Portal integration.
Siemens S7-1500
High-performance PLC for demanding automation applications. Features advanced motion control, security functions, and optimized block access for efficient data handling.
TIA Portal
Siemens Totally Integrated Automation Portal is the unified engineering framework for configuring S7 PLCs, HMIs, and drives. Used to enable PUT/GET access and configure data block properties.
PROFINET
Industrial Ethernet standard by Siemens for real-time communication between PLCs, I/O modules, drives, and other field devices. Provides the transport layer for S7 protocol communication.
Siemens TCP Driver
Ignition's built-in device driver for Siemens S7 communication. Supports S7-300, S7-400, S7-1200, and S7-1500 PLCs with configurable rack, slot, and polling parameters.
Frequently Asked Questions
Find answers to common questions about this integration.
Ready to Get Started?
Contact our team of experts to discuss your integration needs and get a customized solution.