Skip to content

Siemens S7 ISO TCP

西门子 S7 ISO TCP 是西门子公司推出的一种协议,主要用于与西门子 S7 系列 PLC 进行通信。此协议基于 TCP/IP 协议栈,使用 ISO-TSAP 协议来处理连接和数据传输,可以实现对 PLC 进行读写操作,包括读取和写入位、字、双字、定时器、计数器等数据类型。

Neuron 实现的 S7 ISOTCP 分为两个插件,其中 Siemens S7 ISOTCP 插件主要用于连接西门子 S200、S200smart、S1200、S1500 型号的 PLC,Siemens S7 ISOTCP for 300/400 插件主要用于连接西门子 S300、S400 型号并且扩展了以太网模块的 PLC。

添加插件

配置 -> 南向设备,点击添加设备来创建设备节点,输入插件名称,插件类型选择 Siemens S7 ISOTCPSiemens S7 ISOTCP for 300/400 启用插件。

插件说明
Siemens S7 ISOTCP适用于西门子 S200、S200smart、S1200、S1500 PLC
Siemens S7 ISOTCP for 300/400适用于西门子 S300、S400 PLC

设备配置

点击插件卡片或插件列,进入设备配置页。配置 Neuron 与设备建立连接所需的参数,下表为插件相关配置项。

字段说明
PLC IP 地址目标 PLC 的 IPv4 地址
PLC 端口目标 PLC 的端口,默认为 102
PDU 大小PDU 大小,默认 960
PLC 型号选择 PLC 型号,可选 S7-200 或 S7-300/400/1200/1500
连接类型连接到 PLC 的类型,可选值:PG、OP、PC
CPU 机架号 (rack)PLC 机架号,默认为 0
CPU 槽号 (slot)PLC 插槽号,默认为 1

TIP

当使用 Siemens S7 ISOTCP 插件连接S7 1200/1500 PLC 时,应进行如下设置:

  • 优化块访问必须被关闭。
  • 访问级别必须是完全连接机制必须允许 GET/PUT。

具体操作步骤参考 Siemens S7-1200/1500 PLC 设置

设置组和点位

完成插件的添加和配置后,要建立设备与 Neuron 之间的通信,首先为南向驱动程序添加组和点位。

完成设备配置后,在南向设备页,点击设备卡片/设备列进入组列表页。点击创建来创建组,设定组名称以及采集间隔。完成组的创建后,点击组名称进入点位列表页,添加需要采集的设备点位,包括点位地址,点位属性,数据类型等。

公共配置项部分可参考连接南向设备,本页将介绍支持的数据类型和地址格式部分。

数据类型

  • INT8
  • UINT8
  • INT16
  • UINT16
  • INT32
  • UINT32
  • FLOAT
  • DOUBLE
  • BIT
  • STRING
  • ARRAY_CHAR

地址格式

AREA ADDRESS[.BIT][.LEN]

AREA ADDRESS

区域数据类型属性备注PLC 区域
Iint8/uint8/int16/uint16/bit/int32/uint32/float输入输入 I、E
O/Qint8/uint8/int16/uint16/bit/int32/uint32/float读/写输出输出 Q、A
F/Mint8/uint8/int16/uint16/bit/int32/uint32/float读/写标志标志内存 M
Tint32/uint32/float读/写计时器计时器 T
Cint16/uint16读/写计数器计数器 C
DBint8/uint8/int16/uint16/bit/int32/uint32/float/double/string读/写全局数据块变量内存 V,全局数据块1

TIP

对于全局数据块 DB,在 PLC 侧诸如 DBX,DBW,DBB 之类的地址,直接转化为 DBW 即可,不需要做字节换算,如 DBX1.0 -> DBW1.0。

.BIT

选填,指某一地址的某一位,范围 0 - 7。

.LEN

当数据类型为 string 类型时,是必填项,表示字符串长度。

地址示例

地址数据类型说明
I0int16I 区域,地址为 0
I1uint16I 区域,地址为 1
O2int16O 区域,地址为 2
Q2int16Q 区域,地址为 2
O3uint16O 区域,地址为 3
F4int16F 区域,地址为 4
F5int16F 区域,地址为 5
M6int16M 区域,地址为 6
T6int32T 区域,地址为 6
T7int32T 区域,地址为 7
C8uint16C 区域,地址为 8
C9uint16C 区域,地址为 9
DB10.DBW10int1610 数据块中,起始数据字为 10
DB12.DBW10uint1612 数据块中,起始数据字为 10
DB10.DBW10float10 数据块中,起始数据字为 10
DB11.DBW10double11 数据块中,起始数据字为 10
I0.0bitI 区域,地址为0,第 0 位
I0.1bitI 区域,地址为0,第 1 位
O1.0bitO 区域,地址为1,第 0 位
O1.2bitO 区域,地址为1,第 2 位
F2.1bitF 区域,地址为2,第 1 位
F2.2bitF 区域,地址为2,第 2 位
DB1.DBW10.0bit1 数据块中,起始数据字为 10,第 0 位
DB2.DBW1.7bit2 数据块中,起始数据字为 1,第 7 位
DB1.DBW12.20string1 数据块中,起始数据字为 12,字符串长度为 20
DB1.DBW100.20ARRAY_CHAR1 数据块中,起始数据字为 100,字符数组长度为 20

ARRAY_CHAR 展示和写入形式为字符串。

应用场景

您可通过 Neuron S7 ISOTCP 插件连接西门子 S7-1200 PLC,具体操作步骤,见 Siemens 1200 PLC 连接示例

数据监控

完成点位的配置后,您可点击 监控 -> 数据监控查看设备信息以及反控设备,具体可参考数据监控