SIEMENS S7
Industrial Automation: Siemens S7 Protocol
Siemens is a global titan in industrial automation, utilizing the S7 Communication (S7Comm) protocol as the backbone for its SIMATIC S7 PLC systems. This protocol acts as the "common language" allowing devices in the Siemens ecosystem to exchange data with SCADA, HMI, and IIoT systems.
1. What is the Siemens S7 Protocol?
The S7 Protocol is a high-level, connection-oriented communication protocol designed for the Siemens SIMATIC S7 family. It operates on the Ethernet (TCP/IP) layer, standardly utilizing Port 102.
- Connection-Oriented: A handshake must occur between the Client and Server before any data transfer.
- Block-Based Access: Allows direct reading/writing to Data Blocks (DB), Inputs (I), Outputs (Q), and Markers (M).
- System Control: Beyond data, it supports administrative commands like PLC Start/Stop (Run/Stop).
2. Legacy (S7-300/400) vs. Modern (S7-1200/1500)
Modern Siemens PLCs have introduced "Optimized Block Access" to improve performance, which fundamentally changes how external devices access memory.
| Feature | S7-300 / S7-400 | S7-1200 / S7-1500 |
|---|---|---|
| Addressing | Absolute (e.g., DB1.DBX0.0) | Symbolic (Names) |
| Security | Open by default | Protected (Requires PUT/GET Permission) |
| Optimization | Standard Access Only | Optimized Access (Default) |
TIA Portal: Activating PUT/GET Permission
In modern S7-1200 and S7-1500 series, PUT/GET permission is a mandatory security setting for external partners like Hubbox Connect to access data.
Step 1: Hardware Configuration
- Open your TIA Portal project.
- Right-click your PLC in the Project Tree and select Properties.
- Navigate to the General tab and locate Protection & Security.
Step 2: Permitting Connection Mechanisms
- Under Protection & Security, click on Connection mechanisms.
- Check the box: "Permit access with PUT/GET communication from remote partner".
Step 3: Disabling Optimized Block Access
External devices usually require standard memory addressing (Offsets). You must modify your Data Blocks (DB) accordingly:
- Right-click the specific Data Block (DB) and enter Properties.
- Go to the Attributes tab.
- Uncheck "Optimized block access".
- Notice the "Offset" column now appears in your DB variable table.
Step 4: Compile & Download
Changes will not take effect until the hardware configuration is reloaded:
- Select the PLC and click Compile (Hardware & Software).
- Click Download to device to update the PLC.
For Hubbox S7 driver configuration and Node-RED integration: www.hubbox.io