西门子S7-1200与S7-200Smart通信探究

2022-02-21 12:20谢小四
现代制造技术与装备 2022年1期
关键词:组态IP地址以太网

谢小四 刘 军

(云南机电职业技术学院 电气工程学院,昆明 650203)

1 S7-1200及S7-200Smart简介

S7-1200及S7-200Smart是目前常用的可编程逻辑控制器(Programmable Logic Controller,PLC),其功能强大、性能稳定,目前在各行各业应用都很广泛,基本替代了继电接触控制系统,避免了继电接触控制系统烦琐的接线及故障查找困难的问题。但是,随着国家工业现代化、自动化、网络化进程的推进及工业转型升级战略的实施,各控制设备之间的通信网络的组建与实施成为了必须解决的技术难题[1-2]。

S7-200Smart是S7-200的升级产品,它继承了S7-200的诸多优点,指令系统基本相同,主机单元都集成了以太网端口和RS485端口,其中以太网端口除了用来下载程序和监控之外,还可以用来与其他的设备或人机界面(Human Machine Interface,HMI)通信,具有开放式用户通信功能,还可作为单向S7通信的客户端或服务器。S7-200Smart所使用的组态编程软件为step7-Micro/win smart。S7-1200是紧凑型、模块化的PLC产品,其功能及性能介于S7-200与S7-300之间,功能强大、支持多种通信协议,所使用的组态编程软件为TIA PROTAL软件。虽然两种设备都属于西门子PLC产品,但是两者之间是不同的组织架构和不同的组态编程软件,要实现通信有一定的困难,且西门子官方没有对S7-1200与S7-200Smart之间的通信进行说明,不建议两者进行通信[3]。但实际应用中,有些设备需要它们进行连接和数据交换,下面以两种典型的PLC为例分析研究两者之间通信。

2 S7通信协议

在S7-1200与S7-200Smart之间可以采用多种协议进行通信,目前广泛使用的S7协议是西门子S7系列PLC基于多点接口(Multi Point Interface,MPI)、PROFIBUS、Ethernet的一种优化的通信协议,主 要 用 于S7-1500、S7-1200、S7-300、S7-400等PLC之间的通信,是面向连接的协议。为了进行S7-1200与S7-200Smart之间的通信服务必须建立逻辑链路[4]。S7连接需要组态的静态连接,静态连接需要占用中央处理器(Central Processing Unit,CPU)连接资源,基于连接的通信又分为单向连接和双向连接,S7-1200仅支持S7单向连接。单向连接中的客户端是向服务器请求服务的设备,客户端可以调用PUT/GET指令读写服务器的存储区,而服务器是通信中的被动方,用户不用编写服务器的S7通信程序[5]。S7通读是由服务器的操作系统完成的,由于客户端可以读写服务器的存储区,单向连接实际上可以实现双向传输数据。

3 硬件配置及网络组态

S7-200Smart选用ST40型号作为本次通信连接的服务器,S7-1200选用S7-1200 CPU 1212C DC/DC/DC型号作为本次通信的客户端,因为两台设备都只有一个通信网口,且编程计算机需要分别与两台设备进行通信,主要完成修改、下载和监控程序等任务,经常插拔网线可能会损坏设备,所以增加了一个5口的交换机,计算机与两台设备都连到交换机上,通过交换机进行通信,网络架构模型如图1所示。

硬件架构完成后,使用TIA PROTAL V15软件创建新项目,并添加1个对应型号的S7-1200 PLC作为站点,然后分配好网络及IP地址,S7-1200 PLC的IP地址为192.168.0.1。在TIA PROTAL软件的网络视图中,右键单击1200 PLC的以太网口,执行快捷菜单命令中的“添加子网”,生成一个名为“PN/IE_1”的以太网,之后单击工具栏上的“连接”,并设置连接类型为“S7连接”,然后右键单击CPU模块,执行快捷菜单命令中的“添加新连接”,在弹出“创建新连接”对话框中,采用默认的连接类型“S7连接”,默认的连接伙伴选择“未指定”,此时多选框“主动建立连接”会被自动选中,并由S7-1200建立连接,然后点击“添加”按钮,创建新连接。上述操作完成后,选中网络视图中的“S7_连接_1”,再选中巡视窗口“属性—常规—常规”中设置连接伙伴(S7-200Smart)以太网端口的IP地址192.168.0.2,本地ID为16#100,选中“地址详细信息”设置本地TSAP为10.01,伙伴的插槽设置为1,TSAP设置为03.01。S7-200Smart以太网端口可以设定,但必须与S7-1200 PLC的IP地址在同一网段,使用S7-200Smart编程软件时将S7-200Smart的IP地址设为192.168.0.2,与TIAPROTAL 软件中设置的连接伙伴的IP地址对应,计算机IP地址设为192.168.0.3。设定IP地址是为了保证计算机、S7-1200 PLC、S7-200Smart PLC能够建立通信,这样才能完成数据的传输和提取。

4 规划数据传输缓存区

网络组态完成后,需要先规划两个PLC的数据传输缓存区。数据传输缓存区的规划非常重要,但并不是每个信号都需要传输,而是需要在设备间提取的数据才需传输。传输缓存区可以清楚地了解数据从何处提取,需要传到的位置,从而避免造成混乱,同时两个PLC之间可以传输位、字节、字、双字等不同类型的数据,也可传输数据和字符等。本项目只阐述数据传送读取的原理,具体传输信号根据实际应用确定,但应避免缓存区的重复使用,特别是避免使用系统已经赋以特殊功能的存储器。本项目数据缓存区规划如表1所示。在S7-1200侧编程调用PUT/GET指令进行传输和接收数据时,S7-200Smart只需在指定传输区域直接使用数据即可。在TIA PROTAL中新建数据块DB2和DB4时,在数据块“属性”中取消“优化的块访问”才能使用绝对地址进行访问,其中DB2是传送给S7-200Smart的区域,DB4是读取S7-200Smart数据的接收区域。S7-200Smart中的DB1.DBX0.0 BYTE 20用来接收S7-1200传来的数据,对应S7-200Smart存储区地址为VB0-VB19,P#DB1.DBX21.0 BYTE 20是发送给S7-1200的数据的存储区,对应S7-200Smart存储区地址为VB20-VB39。

表1 数据缓存区规划表

5 TIA程序编辑

编辑程序时,可以直接在OB1中调用PUT/GET指令。其中:PUT指令是指将本站(S7-1200)中的数据发送给S7-200Smart,该功能可以将S7-1200站点下数据块DB2.DBX0.0开始的20个字节区域数据传送到S7-200Smart PLC以V0.0开始的20个字节中(VB0-VB19);GET指令是指将S7-200Smart区域数据读到S7-1200区域数据中,该功能可以将S7-200Smart站点下VB20.0开始的20个字节的数据读到S7-1200数据块DB4.DBX0.0开始的20个字节中。调用PUT/GET指令时,每一个参数都必须按要求填写,否则会导致通信失败。每一个参数的详细描述在帮助中可以查到。PUT/GET的使用方式基本相同,其中:PUT使用情况如图2所示;GET使用情况如图3所示;PUT/GET功能块所用的参数详细描述如表2所示。

表2 PUT/GET功能块所用的参数描述

网络能够正常通信后,可以在PLC中编写一段程序进行通信测试,查看数据缓存的数据状态能否实时传输到目标PLC,也可以使用通过TIA PROTAL软件监控表和step 7 Micro/win smart 软件的状态表监控数据通信是否正常。若信号能正常传送,即可在程序中使用传输过来的信号进行编程。

以上是以S7-200Smart PLC作为通信连接服务器、S7-1200作为客户端来传送和读取数据在S7-1200中使用PUT和GET指令。在实际应用时,也可以S7-200Smart PLC作为客户端,S7-1200作为服务器,此时需要使用S7-200Smart编程软件step 7 Micro/win smart调用PUT和GET指令向导,并设置少量的参数,从而自动生成通信的子程序NET_EXE,然后保存组态数据的数据块和符号表,再在主程序中调用NET_EXE就可实现S7-200Smart作为客户端进行S7通信连接。

6 结语

经过测试,S7-200Smart PLC不论是作为通信连接的服务器,还是作为客户端,都能正常稳定地通信和数据传输。在实际工程项目中,两种类型均可采用,但以S7-200Smart PLC作为通信连接的服务器编程时会简单一些。通过对S7-200Smart和S7-1200之间的通信研究,为工程项目提供了一种通信连接的方法,便于构建控制系统和更加高效地传输 数据。

猜你喜欢
组态IP地址以太网
浅谈力控ForceControl V7.2组态软件在自动化控制工程中的应用
ZnF低激发电子态的组态相互作用研究
Microchip推出首款车载以太网音视频桥接(AVB)全集成解决方案
组态软件技术现状与发展
高职“工业组态技术”课程建设探析
三大因素驱动创新提速以太网快步迈入“灵活”时代
三大因素驱动创新提速 以太网快步迈入“灵活”时代
公安网络中IP地址智能管理的研究与思考
《IP地址及其管理》教学设计
计算机的网络身份IP地址