Skip to main content Skip to footer

S7 Writer Documentation

Version: 1.3.0

Retrieved: 2025-10-09 15:16:15


S7 Writer

Used for writing values to Siemens S7 PLC´s. The module will write values to the PLC when a message is received from a previous module and then pass the result to the next module(s) in the flow.

Compatible with S7-200, S7-300, S7-400, S7-1200, S7-1500

Note

To write data to S7-1200 and S7-1500 PLC´s the following settings must be used on the PLC

  • "Optimized block access" must be disabled for the DBs you want to access
  • "Permit access with PUT/GET" must be enabled

Settings

Name Requirements Purpose Default
IP Address String with length 1 to 39 IP Address of the PLC to use. ``
Port Number 1 to 65000 Port of the PLC to use 102
Rack Number 0 to Int.Max Index of Rack to use 0
Slot Number 0 to Int.Max Index of Slot to use 0
CPU Type   The S7 CPU Type to connect to S71200
Source Property String with length 1 to 64 The property that contains the value to write to the PLC data
Use Tag Specification from Message Boolean If not checked the Tag Specification have to be set in settings false
Tag Specification See below    

Tag Specification

The data types for the properties on the tag object are:

Name Requirements
s7DataArea One of (Input, Output, Memory, DataBlock)
s7DbAddress number 0 - 10000
s7StartAddress number 0 - 10000
s7BitAddress number 0 - 7
s7Type One of (Bool, Byte, Word, DWord, Char, SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, String, DateTime)

Examples

Example with passing only value on input message

# Settings:
IP Address = 192.168.2.15
Port = 102
Rack = 0
Slot = 0
CPU Type = S71200
Source Property = data
Use Tag Specification from Message = false
Tag Specification:
    S7DataArea = DataBlock
    S7DbAddress = 1
    S7StartAddress = 0
    S7BitAddress = 0
    S7Type = Bool

# Incoming message:

{
    data : true
}

# Outgoing message:

{
    data : true,
    crosser : {
        success : true
    }
}

Example with passing value and Tag Specification on input message

# Settings:
IP Address = 192.168.2.15
Port = 102
Rack = 0
Slot = 0
CPU Type = S71200
Source Property = data
Use Tag Specification from Message = true

# Incoming message:

{
    data : true,
    s7DataArea = 'DataBlock'
    s7DbAddress = 1
    s7StartAddress = 0
    s7BitAddress = 0
    s7Type = 'Bool'
}

# Outgoing message:

{
    data : true,
    s7DataArea = 'DataBlock'
    s7DbAddress = 1
    s7StartAddress = 0
    s7BitAddress = 0
    s7Type = 'Bool'
    crosser : {
        success : true
    }
}

Output

Output will be the same as the input including a crosser object that reports if the operation was a success or not.