使用IOT-Tree Server通过S7 Eth协议连接西门子PLC S7-1200

IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了各种设备接入、数据组织管理、数据分享使用、消息流控制逻辑和人机交互多个方面的功能。当然,你也可以仅仅使用这个软件作为数据采集终端或边缘计算的软件。
这是IOT-Tree Server相关的系列文章,你可以参考其他文章更多了解IOT-Tree能给你带来的好处:
使用IOT-Tree Server通过MC协议连接三菱Q系列PLC
使用IOT-Tree Server通过FINS协议连接欧姆龙CP2E-N系列PLC
系列文章还包含IOT-Tree完成一个具体项目的过程,非常详细,如下:
机房自动化监控手把手分享给你 - 10 项目完成总结
本文介绍的是使用IOT-Tree Server通过西门子S7以太网协议连接西门子PLC S7-1200具体过程。
1 设备和环境准备
1.1 对接PLC方法
西门子S7-1200系列PLC的以太网接口是其通信功能的核心组件,支持多种工业协议和灵活的网络配置。该接口集成在CPU模块上,无需额外插槽扩展,适用于中小型自动化项目。
- 通信协议支持:支持PROFINET、TCP/IP、UDP、ISO-on-TCP、HTTP等协议,便于与HMI、SCADA系统或其他PLC设备交互。
- 数据传输速率:10/100 Mbps自适应,满足实时控制需求。
- 设备连接能力:最多支持16个主动连接和3个被动连接(具体取决于CPU型号)。
因此,只需要知道PLC的IP地址,并且部署的IOT-Tree能够正常访问这个地址就可以与此PLC进行通信。
1.2 IOT-Tree准备
对接PLC的IOT-Tree Server软件实例安装配置可以参考:
IOT-Tree快速开始
以下是IOT-Tree已经安装之后,通过以太网方式对接PLC S7-1200的详细配置过程。
2 IOT-Tree使用以太网连接PLC S7-1200配置过程
访问IOT-Tree管理地址http://localhost:9090,输入管理员用户密码之后,进入管理主界面。在本地项目区块中,新增项目标题为:“Siemens S7-1200 Prj”。如下图:

2.1 配置接入
点击左上角接入菜单,选择“Tcp Client”,在弹出窗口中填写如下内容,特别注意PLC的IP地址和对外端口。如下:

点击确定之后,就完成了接入配置:

2.2 配置通道和设备
接着,我们在中间浏览树根节点,鼠标右键选择“New Channel”。在弹出的窗口填写如下内容,其中驱动点击选择"Siemens TCP/IP Ethernet"。

然后鼠标右键此通道"s7",选择"New Device"新增PLC对应的设备,弹出对话框中填写如下:

完成之后,就完成了通道节点和PLC设备节点的添加。然后鼠标左键点击接入“c1”的连接端子到这个设备“PLC1”的连接端子上方,然后松开左键,建立接入到这个设备的关联:

2.3 配置采集的数据标签
点击选中plc1设备节点,在右边标签[标签]列表中就可以添加需要采集的数据了。
点击"新增标签"按钮,弹出如下标签编辑窗口。

标签填写说明:
标签名称必须符合变量名称规范;地址区域填写的地址格式和西门子PLC要求的规范一致。如果不确定地址和数据类型是否合理,可以点击“自动检查地址按钮”。IOT-Tree会根据当前填写的地址内容进行有效性判断和规范格式,并自动设置数据类型。当然,你还可以点击帮助查看支持的PLC地址格式和范围。
下面则是点击帮助按钮弹出的地址格式和范围说明文档:

确定之后,我们就添加了这个状态标签:

如果你采集的数据点不多,那么直接在设备PLC设备节点下配置全部标签(采集点)就行了。但是,如果需要采集的数据点很多,建议在这个设备节点下添加标签组子节点进行分类,然后在不同的标签组下面分别添加标签即可,整个过程基本鼠标右键使用里面的菜单项即可完成,在此不做详细展开了。配置标签和标签组最终效果如下:

注意:对于DB块,需要在TIA软件中,不要设置优化,这样可以正确分配固定的内存地址。
补充说明:你也可以使用导入标签的方式一次添加多个标签。或者如果你已经做过类似机器配置,其他IOT-Tree项目与此类同。那么可以从另外项目导出标签列表文本,在此项目中使用“导入标签”快速导入。
以上如果配置都正确,现场PLC已经通电,启动这个项目到运行状态,就可以看到接入和通道都进入运行状态,并且标签的采集数据也会不断更新变化。这样就完成的现场设备接入。
本项目只讲述了S7-1200的接入。事实上,一个IOT-Tree项目可以通知接入多个不同品牌的各种PLC数据,只需要分配不同的通道(驱动)和设备即可。
2.4 后续数据处理
通过以上基础的设备接入和设备数据组织配置,接下来你可能需要有如下数据使用。
2.4.1 基于标签数据制作组态监控画面
本部分可以参考我的系列文章:机房自动化监控手把手分享给你 - 10 项目完成总结
这一系列文章非常详细的说明了整个监控画面的制作和使用过程。
2.4.2 通过关系数据库共享标签实时数据给其他系统
请参考:使用IOT-Tree消息流实现实时数据同步:标签实时数据--关系数据库表
2.4.3 通过MQTT向云端定时发送采集数据
请参考:使用IOT-Tree消息流MQTT模块节点实现监测数据推送功能
当然,还可以有更多的后续数据处理,这些基本都通过IOT-Tree的消息流提供的功能节点来组合配置实现。
