工业网络技术 课件10 Modbus TCP通信及应用;11 PROFINET通信及应用_第1页
工业网络技术 课件10 Modbus TCP通信及应用;11 PROFINET通信及应用_第2页
工业网络技术 课件10 Modbus TCP通信及应用;11 PROFINET通信及应用_第3页
工业网络技术 课件10 Modbus TCP通信及应用;11 PROFINET通信及应用_第4页
工业网络技术 课件10 Modbus TCP通信及应用;11 PROFINET通信及应用_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ModbusTCP通信及应用一、ModbusTCP协议二、PLC与外部设备ModbusTCP通信

时可以使用的指令三、典型工业以太网通信应用(ModbusTCP)一、ModbusTCP协议Modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的Modbus协议:ModbusTCP。Modbus协议是一项应用层报文传输协议,Modbus协议有三种常用格式:Modbus/RTU、Modbus/ASCII和Modbus/TCP。标准的Modbus协议物理层接口有RS232、RS422、RS485和以太网接口,采用master/slave方式通信。前两种协议格式用于串行通信,最后一种用于TCP通信。ModbusTCP的原理是使用一种非常简单的方法把Modbus帧嵌入到TCP帧中,让应用层的Modbus协议与传输层和网络层的TCP/IP协议结合,使得Modbus协议从一种在串行数据链路层上传输的无容错机制不可靠的数据帧变成能在以太网上传输的面向连接的可靠的数据帧。Modbus协议可以借助TCP协议在以太网结构中传输报文,使得分布于世界任何地方的设备之间都可以借助以太网进行通讯。以太网ModbusTCP/IP协议通信族分别对应到OSI七层模型中的五层,如表1所示。一、ModbusTCP协议表1ModbusTCP/ip协议五层模型层OSI模型MODBUS/TCPIP五层模型7应用层MODBUS应用层协议6表示层空5会话层空4传输层TCP协议3网络层IP协议2数据链路层Enternet/802.3IEEE802.21物理层以太网物理层一、ModbusTCP协议ModbusTCP/IP协议的网络层,传输层均是基于TCP/IP协议。在应用层,发送端将Modbus协议修改后封装进去,接收端将该TCP数据包拆封后,重新获得原始的Modbus协议帧(不带CRC-16校验),然后按照Modbus协议规范进行解析,并将返回的数据包重新封装进TCP协议中,返回发送端。ModbusTCP/IP协议报文在以太网中通过TCP/IP协议传输时,ModbusTCP/IP协议报文包含在TCP/IP报文中,具体的关系如图1所示。图1ModbusTCP/IP协议报文与TCP/IP协议报文包含关系一、ModbusTCP协议Modbus协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。而在特定总线或网络上的Modbus协议的映射能够在应用数据单元(ADU)上引入一些附加域,ModbusTCP/IP协议报文正是在Modbus应用数据单元上增加了MBAP报文头用于在以太网上实现TCP/IP传输。ModbusTCP/IP协议报文格式如图2所示。ModbusTCP/IP协议报文格式中包含了MBAP报文头、功能码和数据三部分。网络通信的差错校验功能不在ModbusTCP/IP应用报文中实现,而是交给了以太网的链路层和TCP协议实现。图2ModbusTCP/IP协议报文格式一、ModbusTCP协议ModbusTCP/IP协议报文中的MBAP报文头分为四个部分,共占用7个字节,各个部分的描述,如下表2所示。表2MBAP报文头描述域占用字节描述TransactorID(事务元标识符)2个字节ModbusTCP/IP请求、响应事务处理的识别符ProtocolID(协议标识符)2个字节为全0,标识ModbusTCP/IP协议Length(长度)2个字节协议剩下的字节数UnitID(单元标识符)1个字节总线上连接的远程从站的识别码二、PLC与外部设备ModbusTCP通信时可以使用的指令通过“MB_CLIENT”指令,可以在客户端和服务器之间建立连接、发送Modbus请求、接收响应并控制ModbusTCP客户端的连接终端。ModbusTCP客户端可以支持多个TCP连接,连接的最大数目取决于所使用的CPU。一个CPU的总连接数,包括ModbusTCP客户端和服务器的连接数,不能超过所支持的最大连接数。ModbusTCP连接还可由“MB_CLIENT”和/或“MB_SERVER”实例共用。使用各客户端连接时,请记住以下规则:每个“MB_CLIENT”连接都必须使用唯一的背景数据块。对于每个“MB_CLIENT”连接,必须指定唯一的服务器IP地址。每个“MB_CLIENT”连接都需要一个唯一的连接ID。该指令的各背景数据块都必须使用各自相应的连接ID。连接ID与背景数据块组合成对,对每个连接,组合对都必须唯一。根据服务器组态,可能需要或不需要IP端口的唯一编号。二、PLC与外部设备ModbusTCP通信时可以使用的指令表3列出了MB_CLIENT指令的参数。参数声明数据类型说明REQInputBOOL对ModbusTCP服务的Modbus查询REQ参数受到等级控制。这意味着只要设置了输入(REQ=true),指令就会发送通信请求。Modbus查询开始后,背景数据块将锁定,其它客户端无法使用。在服务器进行响应或输出错误消息之前,对输入参数的更改不会生效。如果在Modbus请求期间再次设置了参数REQ,此后将不会进行任何其它传输。表3MB_CLIENT指令的参数二、PLC与外部设备ModbusTCP通信时可以使用的指令参数声明数据类型说明DISCONNECTInOutBOOL通过该参数,可以控制与Modbus服务器建立和终止连接:0:与通过CONNECT参数组态的连接伙伴(请参见CONNECT参数)建立通信连接。1:断开通信连接。在终止连接的过程中,不执行任何其它功能。成功终止连接后,STATUS参数将输出值0003。而如果在建立连接的过程中设置了参数REQ,将立即发送Modbus请求。MB_MODEInOutUSINT选择Modbus的请求模式(读取、写入或诊断)或直接选择Modbus功能MB_DATA_ADDRInOutUDINT取决于MB_MODEMB_DATA_LENInOutUINT数据长度:数据访问的位数或字数MB_DATA_PTRInOutVARIANT指向待从Modbus服务器接收的数据或待发送到Modbus服务器的数据所在数据缓冲区的指针。表3MB_CLIENT指令的参数(续)二、PLC与外部设备ModbusTCP通信时可以使用的指令参数声明数据类型说明CONNECTInOutVARIANT指向连接描述结构的指针可以使用以下结构(系统数据类型):TCON_IP_v4:包括建立指定连接时所需的所有地址参数。使用TCON_IP_v4时,可通过调用指令“MB_CLIENT”建立连接。TCON_Configured:包括所组态连接的地址参数。使用TCON_Configured时,将使用下载硬件配置后由CPU创建的已有连接。DONEOutBOOL如果最后一个Modbus作业成功完成,则输出参数DONE中的该位将立即置位为“1”。BUSYOutBOOL0:无正在进行的Modbus请求1:正在处理Modbus请求在建立和终止连接期间,不会设置输出参数BUSY。ERROROutBOOL0:无错误1:出错。出错原因由参数STATUS指示。STATUSOutWORD指令的状态表3MB_CLIENT指令的参数(续)三、典型工业以太网通信应用(ModbusTCP)RFID电子标签作为数据载体,能起到标识识别、物品跟踪、信息采集的作用,得以在防伪、生产管理、仓库管理、租赁产品管理、物联网、运动竞技等许多领域应用。尤其在生产流水线中,RFID电子标签可以准确地记录工序信息和工艺信息,满足柔性化的生产需求。对工人工号、时间、操作、质检结果的记录,完全实现生产的可追溯性,还可人工手写、眼看造成的失误。图3三、典型工业以太网通信应用(ModbusTCP)如图所示,为提高柔性化生产水平,工厂决定对原生产线做升级改造。其中一项升级任务就是在生产线的某特定位置,设置RFID电子标签的读写装置,保证及时、准确地记录产品当前的生产信息,以满足生产工艺的可追溯需求。读写的结果可以在展示在HMI界面上。图4三、典型工业以太网通信应用(ModbusTCP)工具/辅件准备网线图5三、典型工业以太网通信应用(ModbusTCP)1.设置RFID通信参数(1)修改PC机IP地址为192.168.0网段非服务器地址图6三、典型工业以太网通信应用(ModbusTCP)(2)安装打开调试助手图7三、典型工业以太网通信应用(ModbusTCP)(3)选择连接设备的通信网卡图8三、典型工业以太网通信应用(ModbusTCP)(4)选择调试设备图9三、典型工业以太网通信应用(ModbusTCP)(5)更改提交设备参数(IP78:4001;子网掩码;网关;)图10三、典型工业以太网通信应用(ModbusTCP)2.PLC编程(1)添加读取功能块REQ:true发送通信请求DISCONNECT:0建立连接1关闭连接MB_MODE=0、MB_DATA_ADDR=40009、MB_DATA_LEN=1构成的组合设定的功能代码是03。将从远程地址40009开始读1个寄存器。依据手册,有64个寄存器,可用56个,对应地址为40009~40064连接参数CONNECT端口设置:新建数据连接数据块”TCON_IP_v4“,回车,自动生成连接参数架构图11三、典型工业以太网通信应用(ModbusTCP)连接参数设置。图12三、典型工业以太网通信应用(ModbusTCP)(2)添加写入功能块MB_MODE=2、MB_DATA_ADDR=40009、MB_DATA_LEN=1构成的组合设定的功能代码是16。将在远程地址40009开始写1个保持寄存器。图13PROFINET通信及应用一、PROFINET协议二、PROFINET实时通信三、控制器间的数据交互一、PROFINET协议PROFINET是一种基于工业以太网和IT标准的现场总线通信系统,具有比PROFIBUS更多的优点,因而在自动化控制领域中得到越来越广泛地应用。1.传输介质和连接器(1)传输介质目前PROFINET支持百兆以太网100BASE-TX,采用两对双绞屏蔽线(GP2×2系列)作为短距离信号传输。表1IEFC电缆GP2x2型系列名称特点适用范围GP2×2A型单股导体固定设备GP2×2B型较软电缆偶尔移动的设备GP2×2C型软电缆经常移动的设备GP2×2船用耐腐蚀船用设备一、PROFINET协议GP2×2A型实物图1所示,其中黄色/橙色用于发送信号,白色/蓝色用于接收信号。图1GP2x2A型一、PROFINET协议(2)连接器目前PROFINET支持RJ45网线接口和M12网线接口等。电缆与连接器的连接方法如表2-15所示,表2电缆与连接器的连接方法名称功能导线颜色RJ45M12TD+发送数据黄11TD-发送数据橙23RD+接收数据白32RD-接收数据蓝64一、PROFINET协议PROFINET与PROFIBUS的比较如表3所示。表3PROFINET与PROFIBUS的比较名称PROFINETPROFIBUS最大传输速率100Mbit/s12Mbit/s数据传输方式全双工半双工网络拓扑结构星型、线型、树型线型一致性数据范围254字节32字节网段长度100m100m主站个数无限制多主站会影响速率诊断功能强弱一、PROFINET协议2.PROFINET通信协议模型PROFINET通信协议模型同样符合ISO/OSI七层网络结构模型,如表4所示。表4PROFINET通信协议模型表ISO/OSIPROFINET7bPROFINET

IO服务(IEC61784)PROFINET

IO协议(IEC61158)PROFINET

CBA(IEC

61158)7a无连接RPC面向连接RPC(DCOM)4UDP(RFC768)TCP(RFC793)3IP(RFC791)IP(RFC791)2IEEE802.3全双工IEEE802.1优先标识1IEEE802.3

100BASE-TX,100BASE-FX一、PROFINET协议PROFINET通信种类:TCP/IP用于对通讯速率要求不高的数据传输。如设备组态、设置参数和下载上传程序、低精度过程控制、低精度运动控制等。软实时(SRT)技术用于对通讯速率要求较高的数据传输。如高精度过程控制、中精度的运动控制等。等时同步实时(IRT)技术用于对通讯速率要求高的数据传输,如高精度的运动控制等。一、PROFINET协议3.PROFINET的种类PROFINET有两种数据交换方式,分别为PROFINETI/O,PROFINETCBA。(1)PROFINETI/O①简介用于分布式I/O自动化控制系统,其工作性质类似于PROFIBUS—DP。传感器、执行机构等装置连接到I/O设备上,通过I/O设备连接到网络中。网络中还有对I/O设备进行监控的I/O控制器和I/O监视器。PROFINETIO支持实时通信(RT)和等时同步通信(IRT)工作模式。数据传输速率高于PROFIBUS—DP。一、PROFINET协议②系统基本组成如图2所示。图2系统基本组成一、PROFINET协议IO控制器:读写I/O设备的过程数据,接收I/O设备的报警诊断信息,执行自动化控制程序。IO监视器:读写I/O控制器的数据,上位机可编写、上传、下载、调试控制器的程序,上位机、HMI可对系统实现可视化监控。IO设备:连接现场分散的检测装置、执行机构。传递现场采集的各类数据,传递执行机构的控制指。③应用案例在西门子PLC中应用时,其组态要求:网络中的节点必须分配设备名称。设备名称必须符合要求。例如:CPU314C分配名称为PLC01,人机界面分配名称为HMI02。网络中的节点必须分配IP地址,各IP地址要在同一网段内。例如:HMI的IP地址为,CPU314C的IP地址为。网络中节点的子网掩码相同。例如:。如果节点之间采用通信报文方式传输数据,必须建立通讯伙伴关系。一、PROFINET协议(2)PROFINETCBA(Commponent-BasedAutomation)①简介把典型的控制环节做成标准组件,这些标准组件可以完成不同的标准控制任务。一个复杂的控制任务,可以分解成若干个不同的标准任务。从中选择不同的标准组件连接成一个网络,对这些标准组件的工作进行协调,就能完成一个复杂的控制任务。PROFINETCBA就是模块化的现场总线网络,它特别适用于大型控制系统。通信速率略低于PROFINETIO。一、PROFINET协议②系统基本组成系统基本组成如图3所示,每个标准组件是由控制器、分布式I/O设备、监视设备、检测装置、执行机构等组合而成,图3系统基本组成一、PROFINET协议③特点1)减少了系统的设计工作量。2)模块化的组件具有高度的独立性和完整性,减少了系统的调试工作量。3)简化了系统的维护工作量。④使用要求为了完成某个特殊任务,需要设计者创建组件,并生成PCD文件。标准组件通常由设备制造商提供,采用标准化的PCD(PROFINETComponentDescription)文件描述。PCD文件应用XML生成并存储,硬件组态时需要这个文件。二、PROFINET实时通信根据响应时间的不同,PROFINET支持三种通讯方式:TCP/IP标准通讯、实时通讯(RT)、等时同步实时通讯(IRT)。图4IRT、RT、TCP\IP通讯相应时间对比二、PROFINET实时通信1.TCP/IP标准通讯使用TCP/IP协议的非实时通讯通道,响应时间为100ms,主要用于设备参数化、组态和读取诊断数据。图5PROFINETTCP/IP标准通讯二、PROFINET实时通信2.实时通讯(RT)使用实时通道RT,是软实时SRT(SoftwareRT)方案,响应时间为5-10ms,使用标准网络器件(如交换机)来保证实时性。使用了标签协议标识符(VLAN)对实时帧进行优先级标识,从而控制运行时间内设备之间的数据流,并利用以太网类型和帧类型标识符将帧分配到相应的实时通道中,主要用于工厂自动化。图6PROFINET实时通讯(RT)二、PROFINET实时通信

图7PROFINET同步实时通讯(IRT)三、控制器间的数据交互1.任务引入由于PLC自身的数据处理量和速度是有极限的,且PLC的信号传输也受距离限制,如果采用一台超大型PLC不仅会有外接电波的干扰,还会大大增加工程成本。在实际工程中为了方便调试和维护,通常一个PLC只完成某种特定的功能,因此经常会采用多站点并互联PLC来解决这些问题。这就需要多台PLC通过通信从而进行数据的交互。本实训平台中PLC_1主要与仓储单元等单元模块进行直接通信,PLC_2直接与总控单元的急停按钮、三色灯等报警装置关联。若要实现单元模块的运行状态通过PLC_2的报警装置显示出来,就要建立两PLC之间的通信。三、控制器间的数据交互2.任务内容如图8所示,利用“TSEND_C”指令和“TRCV_C”指令建立两PLC之间的通信,以PLC_1的MB900作为数据的发送区,以PLC_2的MB1000作为数据的接收区,实现将PLC_1中的标志位存储区(MB900)的INT型数据(0~255)传输至PLC_2的标志位存储区(MB1000)。通信建立完成后通过修改PLC_1中MB900的存储数据(INT型)并查看PLC_2中MB1000的数据是否与其一致,以此测试数据的交互是否正常。图8数据交互三、控制器间的数据交互3.任务实施序号操作步骤示意图一、通信组态1分别将两台PLC的网口连接到交换机上,实现网络硬件的连接2在组态的网络视图中点击PLC网口,更改两PLC在组态中的IP地址,使它们位于同一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论