S7-1200 PLC 基于 Modbus 通信协议的数据采集及远程传送应用-论文
- 格式:pdf
- 大小:137.54 KB
- 文档页数:2
s7-1200plc的modbustcp通信分析S7-1200 PLC是西门子公司推出的一款低成本、可编程的控制器,具有高效稳定的运行和良好的可扩展性,可满足工业自动化控制系统中的各种需求。
Modbus TCP通信是一种常见的工业通信协议,支持TCP/IP协议栈,可以广泛地应用于工业自动化系统中。
S7-1200 PLC提供了多种通信接口,包括以太网接口、串口接口等,其中以太网接口是支持Modbus TCP通信协议的。
以太网接口允许PLC与其他设备进行数据通信,其中包括Modbus TCP通信。
Modbus TCP通信协议是Modbus ASCII和Modbus RTU通信协议的延伸,使用开放式通信协议,基于TCP/IP网络,具有更高的传输速度和更强的可靠性。
Modbus TCP通信协议使用TCP连接代替串行连接,可以同时连接多个设备。
Modbus TCP通信协议支持各种数据传输方式,包括二进制数据、ASCII码和RTU形式。
Modbus TCP通信协议采用了客户端/服务器模型,客户端发送请求,而服务器则对请求进行响应。
S7-1200 PLC作为服务器,接收客户端的请求,处理请求并返回相应的结果。
S7-1200 PLC使用TSEND_C函数和TRCV_C函数实现Modbus TCP通信。
TSEND_C函数用于发送数据,TRCV_C函数用于接收数据。
在使用TSEND_C函数和TRCV_C函数前,需要对Modbus TCP通信进行初始化。
初始化Modbus TCP通信需要设置IP地址、端口号和通信参数等。
在Modbus TCP通信中,每个数据都有一个唯一的标识号,称为寄存器地址。
寄存器地址用于识别数据在PLC中的位置。
S7-1200 PLC支持读取位、读取字和读取双字等不同的读取方式,可以根据需要进行设置。
S7-1200 PLC还支持写入位、写入字和写入双字等不同的写入方式。
Modbus TCP通信协议需要设备地址来确定通信设备,S7-1200 PLC的设备地址默认为1。
简述西门子PLC的S7-1200的MODBUS/TCP通信的客户端及服务器设置作者:郭爱华来源:《价值工程》2019年第30期摘要:MODBUS/TCP是MODBUS 通讯中的一种以太网通讯方式,MODBUS/TCP通讯对使用硬件要求低,应用广泛。
西门子PLC的S7-200可以设置为MODBUS/TCP通信方法,其中使用了两个MODBUS/TCP命令“MB_CLIENT”指令和“MB_SERVER”指令,它们分别将PLC设置MODBUS客户端和MODBUS服务器,本文重点介绍这两个命令的设置方法。
Abstract: MODBUS/TCP is an Ethernet communication method in MODBUS communication. MODBUS/TCP communication has low hardware requirements and a wide range of uses. The Siemens PLC S7-1200 can be set to the MODBUS/TCP communication method, in which two MODBUS/TCP commands "MB_CLIENT" and "MB_SERVER" are used, which respectively set the PLC as a MODBUS client for industrial robots and MODBUS server for MES manufacturing process execution and management system. This paper focuses on the setting methods of these two commands.关键词:MODBUS/TCP;S7-1200;客户端;服务器Key words: MODBUS/TCP;S7-1200;client;server中图分类号:TP368.5 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;文献标识码:A ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;文章编号:1006-4311(2019)30-0204-030 ;引言自动化系统包括多种通讯协定,它们是可以应用于工业控制器上的通用语言。
Techniques of Automation &ApplicationsS7-1200PLC 的几种以太网通信方法黄涛,熊国灿(北京经济管理职业学院工程技术学院,北京102602)摘要:S7-1200PLC 通信是学习和应用的难点;也是新知识,散见于技术文档。
在博途系统下,通过两台S7-1200之间的通信实例,介绍了四种基于以太网的通信方法。
关键词:S7-1200;以太网通信;PLC 中图分类号:TP273文献标志码:B文章编号:1003-7241(2019)06-0085-04Communication Several Ethernet Methods of S7-1200PLCSHUANG Tao,XIONG Guo-can(Engineering and Technology Department,Beijing Institute of Economics and Management,Beijing 102602China )Abstract:S7-1200PLC communication is a difficult point in learning and application.It is also a new knowledge which is scatteredin technical documents.Four kinds of communication methods based on Ethernet are introduced through the communica-tion examples between two sets of S7-1200in SIEMENS totally integrated automation PORTAL system.Key words:S7-1200;Ethernet Communication;PLC收稿日期:2018-10-291引言西门子公司近年推出S7-1200、S7-1500PLC,同时,西门子公司将原本独立的编辑、编译、调试、人机界面等一系列软件功能集成到一个统一的博途软件平台中[1],简便和规范了PLC 控制系统的开发过程。
s7-1200plc的modbustcp通信分析ModbusTCP是基于TCP/IP的Modbus协议的实现方式。
它是一种网络协议,主要用于通信控制器,设备和相关电子设备之间的沟通。
本文主要讨论S7-1200PLC的ModbusTCP通信分析。
1,介绍:S7-1200PLC 是一种可编程控制器,可以为客户提供最智能的系统结构和最全面的功能,为工业应用控制提供极高的性能。
因为支持ModbusTCP,它也可以作为工业网络的一种通信协议。
2,ModbusTCP协议:ModbusTCP协议基于TCP/IP协议,它是Modbus协议的网络实现,它使得Modbus协议可以在以太网上使用。
ModbusTCP协议对以太网上的以太网报文进行了一定的封装,来实现Modbus混合以太网通信。
ModbusTCP协议中主要涉及三方面内容:(1) Modbus从机地址:Modbus从机一般有32个,其地址从1开始,最多可达到255;(2) Modbus功能码: ModbusTCP功能码包括01,02,03,04,05,06,15,16,17等,各种功能码对应不同的功能,需要根据不同要求而定;(3)数据长度:这个是需要传输的数据字节长度和格式,以帧传输为例,一个帧可以传输8个字节,共用2个字节定义数据长度。
3,S7-1200PLC的ModbusTCP应用:S7-1200PLC使用ModbusTCP协议,是可以将本地的Modbus从机的设备连接到一个中央的Modbus主机。
它可以实现实时的数据传输和状态检测,来方便实现可靠的远程监测系统。
S7-1200PLC的ModbusTCP应用有以下几点:(1)支持Modbus TCP/IP的RTU和ASCII模式通信,可实现设备远程监测;(2)可实现Modbus客户端和服务器端,支持以组播或广播形式发送读数据,支持双向数据交换;(3)可以实现功能码01至0B和1E至4D的读写,支持读取字和位,支持Modbus TCP的多种功能码;(4)支持网络拓扑结构和网络地址搜索,可在不同IP地址域中实现统一的远程管理;(5)可以进行多种通信方式的转换,支持Modbus、OPC、OGEM、OPL等多种协议通信;(6)支持缓冲数据报文转发功能,实时控制读写数据;(7)实现Modbus单片机应用控制,可在实时系统中迅速添加新的通信协议;(8)能够实现多用户的安全管理,通过密码进行数据时间校验。
s7-1200plc的modbustcp通信分析S7-1200 PLC是西门子推出的一款高性能、高可靠的工业自动化控制器,它具有紧凑的结构和强大的功能,适用于各种工业控制应用。
而ModbusTCP是一种常用的工业通信协议,它被广泛应用于工业控制系统中,用于PLC、HMI和其他设备之间的通信。
本文将对S7-1200 PLC的ModbusTCP通信进行分析,探讨其通信原理、配置方法和常见问题及解决方法,以帮助工程师更好地理解和应用S7-1200 PLC的ModbusTCP通信功能。
1. ModbusTCP通信原理ModbusTCP是基于TCP/IP协议的Modbus通信协议的一种实现方式,它采用了现代化的网络通信技术,具有高速传输、稳定性强等特点。
在S7-1200 PLC中,通过配置S7-1200 CPU的通信模块,可以实现与其他设备(如HMI、传感器、执行器等)之间的ModbusTCP通信。
通信的基本原理是通过TCP/IP网络将数据从一个设备传输到另一个设备,其中包括ModbusTCP通信的功能码、数据地址、数据类型等信息。
S7-1200 PLC通过配置ModbusTCP 通信参数,建立与其他设备的通信连接,实现数据的读取和写入。
S7-1200 PLC的ModbusTCP通信配置主要包括以下几个步骤:2.1 配置CPU参数打开TIA Portal软件,选择相应的S7-1200 PLC项目,进入PLC程序编辑界面。
在“设备配置”中选择CPU,点击“属性”进行参数配置。
在“通信”选项中选择“以太网”通信方式,并配置IP地址、子网掩码等基本参数。
还需配置CPU的ModbusTCP通信功能使能,并设置通信模块的通信速率、数据位数等相关参数。
2.3 配置通信数据区在TIA Portal软件中,选择PLC程序编辑界面,添加ModbusTCP通信的数据区。
根据通信需求,设置读写数据的地址、数据类型、数据长度等参数。
S7-1200PLC 基于Modbus 通信协议的数据采集及远程传送应用通过采集各个换热站房的实时数据,建立集中供热热网监控系统既可以实时总览热网当前运行工况又可以分析室外温度及系统供热量变化趋势,做出整体运行规划,指导运行实现自动控制。
Modbus 协议是一种已广泛应用于当今工业控制领域的通用通信协议。
通过此协议,控制器相互之间、或控制器经由网络(如以太网)可以和其它设备之间进行通信。
Modbus 通信物理接口可以选用串口(包括RS232和RS485),也可以选择以太网口。
S7-1200 设计紧凑、组态灵活且具有功能强大的指令集,这些特点的组合使它成为控制各种应用的完美解决方案。
TIA 博途全集成自动化软件用于S7-1200项目管理、编程和调试,在库函数中嵌套了Modbus-RTU 和Modbus-TCP 功能库,可以利用该库函数顺利完成PLC 与第三方设备和上位机的通信。
1系统概述典型换热站所需监测的运行参数有一次侧供水压力和供水温度、一次侧回水压力和回水温度、二次侧供水压力和供水温度、二次侧回水压力和回水温度、循环变频器工作频率和故障状态、补水变频器工作频率和故障状态。
各换热站现场PLC 与智能仪表和变频器通信采集系统运行数,并通过Internet 或企业局域网,上传至主控中心。
操作员从控制中心通过该系统能够方便地得到子站运行的数据并向子站下达控制指令。
数据采集以及远程传送系统连接如图1所示。
2 系统设计2.1 站内设备数据采集系统设计目前大多数换热站内设备的运行参数都是通过智能仪表进行运算处理后显示。
智能仪表兼备标准模拟量信号输出接口和RS485 Modbus 协议通信接口。
变频器工作状态输出也可以通过数字量输出接口、标准模拟量信号输出接口和RS485 Modbus 协议通信接口输出。
数字量输出和模拟量输出能够表达的状态位和数据内容非常有限,而以支持Modbus 协议的通信方式可以读出几乎所有的工作参数值,并能够实现远程参数修改和控制。
S7-1200 PLC通信模块介绍S7-1200 PLC具有非常强大的通信功能,提供PROFINET、PROFIBUS、远距离控制通信、点对点通信、USS通信、Modbus RTU(远程终端单元)、执行器传感器接口(Actuator Sensor Interface,AS-i通信)等通信功能。
通信模块和通信处理器(Communication Processor, CP)将扩展CPU的通信接口,S7-1200 PLC最多可扩展3个通信模块(CM 或CP),它们安装在CPU模块的左侧。
1.集成的PROFINET接口实时工业以太网是现场总线发展的趋势,PROFINET是基于工业以太网的现场总线,是开放式的工业以太网标准,它使工业以太网的应用扩展到了控制网络最底层的现场设备。
S7-1200 PLC CPU模块集成的PROFINET接口可用于与编程设备(STEP 7)通信,通信时将PROFINET电缆一端插入PLC的CPU模块,另一端插入计算机或编程设备的以太网接口,如图1所示;其与HMI 设备通信(用于可视化)或与其他PLC通信如图2所示。
此外,它还通过开放的以太网协议TCP/IP、ISO-on-TCP、Modbus TCP支持与第三方设备的通信,还可通过成熟的S7通信协议连接到多个S7控制器和HMI设备。
图1 S7-1200 PLC与编程设备通信图2 S7-1200 PLC与HMI、PLC的通信S7-1200 PROFINET接口由一个RJ45连接器组成。
该连接器具有自动交叉网线功能,因此一个标准或是交叉的以太网线都可以用于该接口,支持最多23个以太网连接,数据传输速率达10/100Mbit/s。
CSM 1277是一个4端口的紧凑型交换机,用户可以通过它将S7-1200 PLC连接到最多3个附加设备,以便轻松组建网络。
2.PROFIBUS通信与通信模块PROFIBUS是目前国际上通用的现场总线标准之一。
111 主控PLC组态和相机、机器人组态简述PLC的CPU模块型号为CPU 1215C DC/DC/DC;增加的数字输入\输出模块型号为DI 16/DQ 16x24VDC;相机采用智能相机信号为SV4-30ML;光源控制器型号为SIC-242,内置两路可控光源输出,两路相机触发端,及五路相机数据输出端,AB端子为RS485通讯端口,两路光源手动调节开关,预留7路站号选择。
工业机器人型号为HSR-JR6。
2 主控PLC与相机、工业机器人的通信程序建立2.1 主控PLC与工业机器人的通信程序建立如图1工业机器人的站号设为1,IP地址为192.168.8.103,端口为502,写给工业机器人的是12个整型数值,读取工业机器人的是2个整型数值。
2.2 主控PLC与相机的通信程序建立如图1原理设计,相机的站号设为3,IP地址为192.168.8.3,端口为502,读取相机的是12个word数值:工件合格、工件型号、X、Y、Z的坐标、偏移角度。
3 编写相机数据处理程序与机器人数据传递程序如图2,先把相机拍照的word型数据高低位交换后,转换成实型数值再做运算,将相机的Y值乘10减去托盘中心Y 值后,乘相机拍照比例后转整型数值为x方向的偏移量。
同理可得y方向上的偏移量。
如图3,是送给机器人的抓取数据传递程序。
其中,rear和front为取4个不同工件收稿日期:2020-01-11作者简介:公相(1982—),男,湖北襄阳人,本科,讲师,研究方向:自动控制。
s7-1200plc 的modbustcp 通信分析公相(襄阳职业技术学院,湖北襄阳 441021)摘要:Modbus TCP是标准的网络通信协议,通过CPU上PN接口进行TCP/IP通信,不需要额外的通信硬件模块,Modbus TCP使用开放式用户通信连接作为Modbus通信路径,所支持的混合客户机和服务器连接数最大为CPU所允许的最大开放式用户通信连接数8个,在工业工程中得到了较多的应用。
s7-1200plc的modbustcp通信分析西门子S7-1200 PLC是一种高级控制器,可用于控制和监控各种工业过程。
它支持多种通信协议,其中包括Modbus TCP。
Modbus TCP是一种通信协议,用于在工业自动化系统中传输数据。
S7-1200 PLC通过Modbus TCP与其他设备进行通信,例如传感器、执行器或其他PLC。
在Modbus TCP通信中,PLC可以充当Modbus TCP客户端或服务器。
客户端将发送请求并接收响应,而服务器将接收请求并返回响应。
在进行Modbus TCP通信之前,首先需要配置PLC的网络设置。
这包括IP地址、子网掩码和网关地址。
确保与其他设备在相同的网络上,并确保其IP地址在网络范围之内。
在PLC中,需要创建一个Modbus TCP通信模块。
在该模块中,可以定义与其他设备之间的通信参数,例如IP地址和端口号。
还可以定义要发送和接收的数据类型和数据量。
PLC还需要定义Modbus TCP请求和响应。
请求通常包括读取或写入数据的目标设备地址、数据类型和数据长度。
响应包括返回的数据。
在PLC中发送Modbus TCP请求时,首先需要建立与目标设备的连接。
然后,将请求发送到目标设备的IP地址和端口号。
目标设备将接收到的请求进行处理,并返回响应。
在PLC中接收Modbus TCP响应时,首先需要检查响应的状态。
如果响应正常,则可以提取所需的数据。
如果响应错误,则需要进行适当的处理。
在进行Modbus TCP通信时,还需要注意数据的顺序。
有两种顺序可供选择:Big-Endian(大端)和Little-Endian(小端)。
确保在PLC和其他设备之间选择相同的顺序,以确保数据的正确传输和解释。
西门子S7-1200 PLC通过Modbus TCP实现与其他设备的通信。
在进行通信之前,需要配置网络设置和创建通信模块。
然后,可以通过发送请求和接收响应来进行通信。
为保证通信的正常进行,需要注意数据顺序和处理响应的状态。