当前位置:文档之家› S7200_PPI通信协议

S7200_PPI通信协议

S7-200 PPI通信协议

PPI通信协议是一种主从式的通信协议,上位机即PC机为主,PLC为从。通信开始由计算机发起,PLC予以响应。

1)、计算机按通信任务,用一定格式,向PLC发送通信命令。

2)、PLC收到命令后,进行命令校验,如无误,则向计算机发送数据E5H或F9H,作出初步应答。

3)、计算机收到初步应答后,再向PLC发送SD DA SA FC FCS ED确认命令。

这里,SD为起始字符,为10H;DA为目的,即PLC地址02H;SA为数据源,即计算机地址00H;FC为功能码,取5CH;FCS为SA、DA、FC和的256余数,为5EH;末字节ED为结束符,也是16H。如按以上设定的计算机及PLC地址,则发送10、02、00、5C、5E、及16,6个字节的十六进制数据,以确认所发命令。

4)、PLC收到此确认后,执行计算机所发送的通信命令,并向计算机返回相应数据。它的通信过程要往复两次才完成一次的通信,比较麻烦,但较严谨,不易出错。

SD LE LER SD DA SA FC DASP SSAP DU FCS ED

SD:(Start Delimiter)开始定界符,占1字节,为68H

LE:(Length)报文数据长度,占1字节,标明报文以字节计,从DA到DU的长度;

LER:(Repeated Length)重复数据长度,同LE

SD: (Start Delimiter)开始定界符(68H)

DA:(Destination Address)目标地址,占1字节,指PLC在PPI上地址,一台PLC时,一般为02,多台PLC时,则各有各的地址;

SA:(Source Address)源地址,占1字节,指计算机在PPI上地址,一般为00;

FC:(Function Code)功能码,占1字节,6CH一般为读数据,7CH一般为写数据

DSAP:(Destination Service Access Point)目的服务存取点,占多个字节

SSAP:(Source Service Access Point)源服务存取点,占多个字节

DU:(Data Unit)数据单元,占多个字节

FCS:(Frame Check Sequence)占1字节,从DA到DU之间的校验和的256余数;

ED:(End Delimiter)结束分界符,占1字节,为16H

命令类型

1)读命令读命令长度都是33个字节。字节0~21,都是相同的,为:“68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10”。而从字节22开始,将根据读取数据的软器件类型及地址的不同而不同。

字节22,表示读取数据的单位。为01时,1bit;为02时,1字节;为04时,1字;为06时,双字。

字节23,恒0。

字节24,表示数据个数。01,表示一次读一个数据。如为读字节,最多可读208个字节,即可设为DEH。

字节25,恒0.

字节26,表示软器件类型。为01时,V存储器;为00时,其它。

字节27,也表示软器件类型。为04时,S;为05时,SM;为06时,AI;为07时AQ;为1E时,C;为81时,I;为82时,Q;为83时,M;为84时,V;为1F时,T。

字节28、29及30,软器件偏移量指针(存储器地址乘8),如:VB100,存储器地址为100,偏移量为800,转换成十六进制就是320H,则字节28到30这三个字节就是00、03、及20.

字节31、32为FCS和ED。

返回数据与发送命令格式数据相同,但包含一条数据。具体是:

SD LE LER SD DA SA FC DASP SSAP DU FCS ED

这里的SD、LE、Ler、SD、SA及FC与命令含义相同。但SD为PLC地址,DA为计算机地址。此外:

字节16:数据块占用的字节数,即从字节21到校验和前的字节数。一条数据时:字,为06;双字,为08;其它为05.

字节22:数据类型,读字节为04.

字节23、24:读字节时,为数据个数,单位以位计,1个字节为08;2个字节为10(16进制计),余类推。

字节25及其后至校验和之前,为返回所读值。

如读VB100开始3个字节,其命令码为:

68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 02 00 03 00 01 84 00 03 20 8D 16(红色02为字节为单位,03为读3个字节)

68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 04 00 01 00 01 84 00 0D 08 84 16

返回码:

68 18 18 68 00 02 08 32 03 00 00 00 00 00 02 00 07 00 00 04 01 FF 04 00 18 99 34 56 8B 16

(这里红色99、34、56分别为VB100、VB101、VB102的值)

2)写命令写一个字节,命令长为38个字节,字节0~字节21为:

68 20 20 68 02 00 7C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10

写一个字,命令长为39个字节,字节0~字节21为:

68 21 21 68 02 00 7C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10

写一个双字数据,命令长为41个字节,字节0~21为:

68 23 23 68 02 00 7C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10

字节22~字节30,为写入数据的长、存储器类型、存储器类型、存储器偏移量。这些与读数据的命令相同。字节32如果是写入的是位数据,这一字节为03,,其它则为04.

字节34写入数据的位数:01:1位,08:1字节,10H:1字,20H:1双字。

字节35~字节40为校验码、结束符。

如果写入的是位、字节数据,字节35就是写入的值,字节36为00,字节37为校验码,字节38为16H、结束码。如果写入的是字数据(双字节),字节35、字节36就是写入的值,字节37为校验码,字节38为16H、结束码.如果写入的是双字数据(4字节),字节35~字节38就是写入的值,字节39为校验码,字节40为16H、结束码。

需要注意颜色字体的功能

如写入QB0=FF,其命令为:

68 20 20 68 02 00 7C 32 01 00 00 00 00 00 0E 00 05 05 01 12 0A 10 02 00 01 00 00 82 00 00 00 00 04 0008 FF 86 16

如协议QD0=FF,其命令是:

68 23 23 68 02 00 7C 32 01 00 00 00 00 00 0E 00 08 05 01 12 0A 10 06 00 01 00 00 82 00 00 00 00 04 00 20 FF FF FF FF A2 16

如写入VB100=12,其命令如下:

68 20 20 68 02 00 7C 32 01 00 00 00 00 00 0E 00 05 05 01 12 0A 10 02 00 01 00 01 84 00 03 20 00 04 00 08 12 BF16

PLC返回数据E5 后,确认写入命令,发送以下数据:

10 02 00 5C 5E 16

PLC返回数据E5 后,写入成功。

如写入VW0=4660,其命令如下:

68 21 21 68 02 00 7C 32 01 00 00 00 00 00 0E 00 06 05 01 12 0A 10 04 00 01 00 01 84 00 00 00 00 04 00 10 12 34 DB 16

如写入VW100=1234H,其命令如下:

68 21 21 68 02 00 7C 32 01 00 00 00 00 00 0E 00 06 05 01 12 0A 10 04 00 01 00 01 84 00 03 20 00 04 00 10 12 34 FE 16

写入VD0=FFFFFFFFH

68 23 23 68 02 00 7C 32 01 00 00 00 00 00 0E 00 08 05 01 12 0A 10 06 00 01 00 01 84 00 00 00 00 04 00 20 FF FF FF FF A5 16

PLC返回数据E5 后,确认写入命令,发送以下数据:

10 02 00 5C 5E 16

PLC返回数据E5 后,写入成功。

请注意以上红体字的含义。

以上命令如执行成功,则返回

68 12 12 68 00 02 08 32 03 00 00 00 00 00 02 00 01 00 00 05 01 FF 47 16

否则返回:

68 0F 0F 68 00 02 08 32 02 00 00 00 00 00 00 00 00 85 00 C3 16

3)STOP命令stop命令使得S7-200CPU从run状态转换到stop状态(此时cpu模块上的模式开关应处于run或term位置)。计算机发出如下命令:

68 1D 1D 68 02 00 6C 32 01 00 00 00 00 00 10 00 00 29 00 00 00 00 00 09 50 5F 50 52 4F 47 52 41 4D AA 16

PLC返回:E5,同时PLC即转为stop状态。

但计算机再发确认报文(10 02 00 5C 5E 16)

PLC将返回:68 10 10 68 00 02 08 32 03 00 00 00 00 00 01 00 00 00 00 29 69 16

到此,才算完成这个通信过程。

4)RUN命令run命令使得S7-200 cpu从stop状态转换到run状态(此时cpu模块上的模式开关应处于run或term位置)。PC机发出如下命令:

68 21 21 68 02 00 6C 32 01 00 00 00 00 00 14 00 00 28 00 00 00 00 00 00 FD 00 00 09 50 5F 50 52 4F 47 52 41 4D AA 16

PLC返回:E5,同时PLC即转为RUN状态。

但计算机再发确认报文(10 02 00 5C 5E 16)

PLC将返回:68 10 10 68 00 02 08 32 03 00 00 00 00 00 01 00 00 00 00 29 69 16

至此,才算完成这个通信过程。

注:以上介绍的不是西门子发布的正式通信协议,还有其它内容。

建议结合些通信的例子来进行测试。

关于西门子PLC的PPI通信协议的研究

关于西门子PLC的PPI通信协议的研究 摘要:本文结合西门子PLC的PPI通信协议的相关理论,主要研究了PPI协议的 通信过程、通信协议模型,并对PLC网络通信模式的构建进行了实例分析。 关键词:西门子PLC;PPI通信协议;通信程序 前言 PPI通信协议是一种特殊的通信协议,其协议本身是不公开的,只有西门子 S7-200的设备支持它。但掌握它也很重要,有时s7-200系列的设备之间只能通过PPI协议通信,例如上位机STEP7-Micro/WIN与S7-200PLC之间的基本通信;有 时只要通过一根电缆就可以实现S7-200PLC之间的简单通信,非常适用。但由于PPI通信协议不是公开的协议,因此一般现场设备是不支持的,限制了其作为标 准现场总线的应用,由此还需对协议内容、功能实现进行研究和分析。 1西门子PLC的PPI通信协议概述 1.1通信过程 在PPI网上,计算机与PLC通信,是采用主从方式,通信总是由计算机发起,PLC予以响应。具体过程如下: 1)计算机按通信任务,用一定格式,向PLC发送通信命令。 2)PLC收到命令后,进行命令校验,如校验后正确无误,则向计算机返回数 据E5H或F9H,作出初步应答。 3)计算机收到初步应答后,再向PLC发送SD(开始定界字符,为10H)、 DA(目标地址,即PLC地址02H)、SA(源地址,即计算机地址00H)、FC(功 能码,取5CH)、FCS(SA、DA、FC和的256余数,为5EH)、ED(结束分界符)确认命令。 如按以上设定的计算机及PLC地址,则发送10、02、00、5C、5E及16,6个字节的十六进制数据,以确认所发命令。 4)PLC收到此确认后,执行计算机所发送的通信命令,并向计算机返回相应 数据。 需要注意的是:如为读命令,情况将如上所述。但如为写或控制命令,PLC 收到后,经校验,如无误,一方面向计算机发送数据E5H,作出初步应答;另一 方面不需计算机确认,也将执行所发命令。但当收到计算机确认信息命令后,会 返回有关执行情况的信息代码[1]。 1.2 PPI协议模型 PPI通信协议的模型以OSI模型为基础,将其中的物理层、数据链路层和应用 层构成现场总线通信的三层模型,如表1所示。 其中PPI的应用层是通信模型的最高层,负责进行应用数据的读写操作。应用层是在数 据链路层之上的,接收数据链路层上传的数据,用来更新本站点的相关数据。当应用层需要 发送数据时,它只要将发送数据的目的站点、数据类型和数据本身等信息下载给数据链路层,由数据链路层去实现数据的发送。 PPI的数据链路层是位于通信模型的第2层,它介于物理层与应用层之间。一方面,它要 执行应用层的数据发送任务,生成数据和控制帧,并将这些帧下载给物理层,通过物理层实 现帧的发送;另一方面,数据链路层还要接收物理层的帧,根据帧进行校验等操作,若是数 据帧,则将其中的数据从帧中读出,上传给应用层。 一次数据写出操作的步骤包括:首先由本站(主站)向从站发出写入请求,从站作出正确接

Server以太网通信协议20060417

动力环境监控系统以太网通信协议 一、报文说明 此命令格式只限于客户端程序同服务器程序之间进行数据传输采用的命令,任何同服务器程序之间进行的通信的程序均被服务器视做客户端程序。 报文说明基本格式如下: 功能码:?? 简短描述:[简短描述语] 描述:[命令的详细介绍] 数据区:[数据区的数据介绍] 服务器同工作站画面通信: 工作站画面 服务器 服务器同前置通信处理机通信: 前置通信处理机 服务器 附加说明: [附加说明列表或说明文字] 二、功能号码索引 命令功能号码分配表速查

三、报文结构定义 3.1 报文结构: 3.2 报文字段结构C 3.2.1 报文头部 C语言结构定义 typedef struct { WORD wFunctionID; WORD wControl; WORD wReason; WORD wDataLen; } MESSAGEHEAD; 结构成员说明: wFunctionID 命令功能号码,此部分唯一的标示出了报文的功能。具体的命令含义及其相应的附加数据请参考2.2.2部分<命令功能号码定义>一节的详细介绍。 wControl 报文控制域。 D0=1表示该报文为请求服务报文,D0=0表示该报文为应答服务报文; (注:请求、应答均相对于服务器而言) D1=1表示该报文需要对方的确认,D1=0表示该报文不需要对方的确认; wReason 报文传送原因。D0-D7被采用,具体定义可以讨论修改: 参数部分的数据长度 3.2.2命令功能号码定义 此部分列出了详细的服务功能码及其对应的数据域部分的组织含义。 四、命令分配详解

功能码:0 描述:保留 功能码: 1 简短描述:系统登录 描述:客户机登录系统时所使用的命令。客户机使用此命令向服务器声明自己的身份及用户信息,供服务器判断自己的合法性。服务器在接收到了此命令后对用户的身份进行确 认,并返回登录结果。 数据区:申请报文包括用户身份证号码、用户名字、用户密码三部分;前置通信机登录时,用户名字字段前15个字节采用以0结尾的字符串”前置通信处理机”填充,密码部分采 用本前置通信处理机的编号(4字节)。 服务器同工作站画面通信: 工作站画面 服务器 服务器同前置通信处理机通信: 前置通信处理机

工业以太网通信协议研究及应用

工业以太网通信协议研究及应用 发表时间:2018-04-24T14:54:01.377Z 来源:《防护工程》2017年第36期作者:林立胜 [导读] Modbus/TCP是用于控制和管理自动化设备的Modbus系列通讯协议的派生产品。 南京富岛软件公司 210032 摘要:在绝大多数工业控制通信方面都是采用现场总线技术方式来实现的。但长期以来现场总线种类繁多、同时又没有统一标准而导致互不兼容,使得系统集成和信息集成面临着巨大挑战,所以引入了应用广泛、高速率、低成本的以太网技术。但以太网的可靠性和实时性比较差,难以适应工业控制的要求,故相关组织对以太网进行了一些扩展,称为工业以太网。随着工业4.0的发展,相信工业以太网技术将越来越重要。本文就常见工业以太网通信协议简介及应用作出阐述。 关键词:现场总线技术、工业以太网、EtherCat、Ethernet/IP、ProfiNet、Modbus/TCP、Ethernet/PowerLink、MechatroLink 1常见工业以太网通信协议 1.1、Modbus/TCP Modbus/TCP是用于控制和管理自动化设备的Modbus系列通讯协议的派生产品。 由此可见,它覆盖了使用TCP/IP协议的Intranet企业内部网和Internet互联网环境中Modbus报文的用途。 该协议的最常见用途是为例如I/O、PLC模块以及连接其它简单域总线或I/O模块的网关服务的。 Modbus/TCP协议是作为一种实际的自动化标准发行的。既然Modbus已经广为人知,该规范只将别处没有收录的少量信息列入其中。 然而该规范力图阐明Modbus中哪种功能对于普通自动化设备的互用性有价值,哪些部分是Modbus作为可编程的协议交替用于PLC的多余部分。 Modbus/TCP 在美国比较流行,它由两部分组成,即IDA分散式控制系统的结构与Modbus/TCP 的信息结构的结合。Modbus/TCP定义了一个简单的开放式又广泛应用的传输协议网络用于主从通讯方式。 1.2.、Ethernet/IP Ethernet/IP是一个面向工业自动化应用的工业应用层协议,这里的IP表示Industrial-Protocal。 它建立在标准UDP/IP与TCP/IP协议之上,利用固定的以太网硬件和软件,为配置、访问和控制工业自动化设备定义了一个应用层协议。Ethernet/IP是在应用层提高了以太网的实时性。 1.3、EnterCat EtherCat以太网控制自动化技术是一个以Ethernet以太网为基础的开放架构的现场总线系统。 EtherCat名称中的Cat为Control Automation Technology控制自动化技术首字母的缩写,最初由德国倍福自动化有限公司BeckhoffAutomationGmbH研发。 EtherCat为拓扑的灵活性和系统的实时性能树立了新的标准,同时它还符合甚至降低了现场总线的使用成本。EtherCAT的特点还包括可选线缆冗余、功能性安全协议(SIL3)和高精度设备同步。 EtherCat通过协议内部的优先权机制可区别传输数据的优先权(Process Data),组态数据或参数的传输是在一个确定的时间段中通过一个专用的服务通道进行(Acyclic Data),EtherCat操作系统的以太网功能与传输的IP协议兼容。 EtherCat设备分从站和主站,从站一般是伺服驱动器、IO模块、板卡、网关等等,主站通常是运动控制器等。 1.4、Ethernet/PowerLink 鉴于以太网的蓬勃发展和CanOpen在自动化领域的广阔应用基础,Ethernet/PowerLink融合了这两项技术的优缺点,既拥有Ethernet 的开放性、高速接口,又参考了CanOpen在工业领域良好的PDO和SDO数据定义; 在某种意义上说Ethernet/PowerLink就是Ethernet上的CanOpen,在物理层、数据链路层使用了Ethernet介质,而应用层则保留了原有的PDO和SDO对象字典的结构。 Ethernet/PowerLink主攻方面是同步驱动和特殊设备的驱动要求。 1.5、MechatroLink MechatroLink是一个用在工业自动化的开放式通讯协定,最早由安川电机开发,现在则由MechatroLink协会Mechatrolink Members Association维护。 MechatroLink协议分为两种: MechatroLink-III,定义传送接口为以太网的通讯协定架构,速度最快为100Mbit/s,允许最多62个从站。 MechatroLink-II,定义传送接口为RS-485的通讯协定架构,速度最快为10Mbit/s,允许最多30个从站; MechatroLink的目标领域主要是以运动控制为中心的现场网络,可连接的设备包括CNC、PLC、PC卡、运动控制器、变频器、外围图像处理设备、伺服驱动器、外围IO设备等。 MechatroLink协会的主要成员基本上都是日本的自动控制厂商,包括欧姆龙、横河电机、安川电机等。 1.6、ProfiNet ProfiNet由西门子主导的Profibus国际组织ProfiBus International-PI推出,是基于工业以太网技术的自动化总线标准。 作为一项战略性的技术创新,ProfiNet为自动化通信领域提供了一个完整的网络解决方案,涵括了例如运动控制、实时以太网、网络安全、分布式自动化以及故障安全等当前自动化领域的热点话题; 作为跨供应商的技术,ProfiNet可以完全兼容工业以太网和现有的现场总线如ProfiBus技术,保护现有投资。 ProfiNet是适用于不同需求的完整解决方案,其功能包括8个主要的模块,依次为运动控制、分布式自动化、网络安装、实时通信、IT 标准和信息安全、故障安全、过程自动化和分布式现场设备。

S7200_PPI通信协议

S7-200 PPI通信协议 PPI通信协议是一种主从式的通信协议,上位机即PC机为主,PLC为从。通信开始由计算机发起,PLC予以响应。 1)、计算机按通信任务,用一定格式,向PLC发送通信命令。 2)、PLC收到命令后,进行命令校验,如无误,则向计算机发送数据E5H或F9H,作出初步应答。 3)、计算机收到初步应答后,再向PLC发送SD DA SA FC FCS ED确认命令。 这里,SD为起始字符,为10H;DA为目的,即PLC地址02H;SA为数据源,即计算机地址00H;FC为功能码,取5CH;FCS为SA、DA、FC和的256余数,为5EH;末字节ED为结束符,也是16H。如按以上设定的计算机及PLC地址,则发送10、02、00、5C、5E、及16,6个字节的十六进制数据,以确认所发命令。 4)、PLC收到此确认后,执行计算机所发送的通信命令,并向计算机返回相应数据。它的通信过程要往复两次才完成一次的通信,比较麻烦,但较严谨,不易出错。 SD LE LER SD DA SA FC DASP SSAP DU FCS ED SD:(Start Delimiter)开始定界符,占1字节,为68H LE:(Length)报文数据长度,占1字节,标明报文以字节计,从DA到DU的长度; LER:(Repeated Length)重复数据长度,同LE SD: (Start Delimiter)开始定界符(68H) DA:(Destination Address)目标地址,占1字节,指PLC在PPI上地址,一台PLC时,一般为02,多台PLC时,则各有各的地址; SA:(Source Address)源地址,占1字节,指计算机在PPI上地址,一般为00; FC:(Function Code)功能码,占1字节,6CH一般为读数据,7CH一般为写数据 DSAP:(Destination Service Access Point)目的服务存取点,占多个字节 SSAP:(Source Service Access Point)源服务存取点,占多个字节 DU:(Data Unit)数据单元,占多个字节

Profinet工业以太网实时通信协议分析

通用低压电器篇 孙凡金(1977 ),男,副教授,博士,研究方向为网络控制系统。 Profi net 工业以太网实时通信协议分析 孙凡金,!刘彦呈,!潘新祥 (大连海事大学轮机工程学院,辽宁大连!116026) 摘!要:在分析P ro fi net 关键技术组成的基础上,对其实时性优化技术进行了综述,并通过分析通信连接的建立及维护,实时协议的组成及通信策略,以及RT 与I RT 的通信技术与实现方法,从整体上研究了P rofi net 实时性优化的协议组成及基本特性,对设计与优化基于Profi net 工业以太网的自动化系统具有一定借鉴。 关键词:Prof i ne t ;实时性;通信连接;同步 中图分类号:T P 393.04!文献标识码:A !文章编号:1001 5531(2008)21 0030 04 The Anal ysis of the Real T i m e Co mmun icati on Protocol i n Profinet !!! SU N Fanji n ,!LIU Yancheng,!PAN X i n x iang (Schoo l ofM arine Eng i n eeri n g ,Da lian M ariti m e Un iversity ,Da lian 116026,Ch i n a) !!Abstract :Based on the analysis o f P ro fi net ?s key techno l ogy ?s constituti on ,its rea l ti m e opti m iza tion tech no l ogy w as survey ed .By ana l yz i ng t he buil d and m ai n tenance of co mmun ica ti on connect ,rea l ti m e protoco l ?s con stituti on and communicati on stra tegy ,RT and I RT ?s communicati on techno logy and rea liza ti onm e t hod ,t he protoco l constit ution and basi c character i stics for P ro fine t rea l ti m e opti m i zati on w ere st udied ,wh ich can be re ference f o r de si gn i ng and opti m izi ng autom ati c system based on Profi net . K ey words :Profi n et ;real ti m e ;co mmun icati on connect ;synch ronous 刘彦呈(1963 ),男,教授,博士生导师,研究方向为工业监控网络。潘新祥(1964 ),男,教授,从事船舶网络化监控技术的研究。 0!引!言 Profinet 是国际组织P NO (Pro fi b us N ati o na l O rganizati o n)提出的用于工业自动化的实时以太网标准[1,2] 。为支持不同工业级应用,Profi n et 提 供了集成式Profinet I O 和分布式自动化中创建模块化设备系统的Pro fi n et CBA [3] 。Profinet I O 对分布式I/O 使用实时通信(RT)和同步实时通信(I R T)协议。RT 通信时钟周期可达10m s 量级,适用于工厂自动化的分布式I/O 系统。I RT 通信时钟周期可达1m s 量级,适用于运动控制系统[4,5]。Profinet CB A 使用TCP /I P 和RT 两种基于组件的通信方式。它允许时钟周期由TCP 协议的100m s 量级降至RT 的10m s 量级,从而更适用于PLC 之间的通信。本文通过分析Profinet 实时性协议的组成,对其通信连接建立及管理、实 时同步机制、等时同步实现方法及关键技术进行 了深入分析,阐述了Profi n et 实时通信解决方案实现方法。 1!Pro fi net 协议架构 传统的以太网使用CS MA /CD (带有冲突监测的载波监听多路访问)协议实现介质访问控制,虽然工业以太网可使用标准的通信协议(如TCP /I P 或UDP /I P)来提高其实时性,但数据包的传输时延很大程度上依赖网络负载而不能预先确定,因此标准协议通信过程中会产生帧过载现象,这即加大传输时延及处理器计算时间,从而延长发送周期,严重影响网络的实时性。为此,Profi net 通过对发送器和接收器的通信栈进行实时性优化,可保证同一网络中不同站点可在一个确定时段内完成时间要求严苛的数据传输。Profine t 30

Siemens PPI协议分析

Siemens PPI协议分析 大家好:我是山东临沂的郝金红,由于前段时间的疯狂的研究西门子PPI协议解密之故,所以无心插柳的研究出了较实用的西门子S7-200 PPI协议,今天奉献大家。我们经常要用于上位机、现场设备与S7-200CPU之间的通讯,但是西门子公司没有公布PPI协议的格式,用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。大家要知道国内的组态王、紫金桥、力控等等组态公司是花了多少钱才得到的PPI的深层协议吗?其实西门子工控产品的超高价垄断掠夺行为已经引起了我们国家及业内人士的抵制和抗议,他们的什么软件都需要授权且对于系统的霸道性是有目共睹的。 这样给用户自主开发就带来了一定的困难,特别是想用VB、VC等语言自行开发,根本没办法接入PLC,要么你大把掏钱给他们。洋为中用,最近在国外网站得到一个串口监视软件,带协议分析的相当不错,你吧!我就是通过此软件的数据监视、分析方法,找出了PPI协议的关键报文格式所在。 其实西门子S7-200 PLC之间或者PLC与PC之间通信有很多种方式:自由口,PPI方式,MPI方式,Profibus方式。使用自由口方式进行编程时,在上位机和PLC 中都要编写数据通信程序。使用PPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。这也是我们之所以要研究、找出PPI协议的源动力! 下面我们就要说说分析的方法了! 西门子的STEP 7 MicroWIN 是用于S7-200系列PLC的开发工具,它使用PC机上的COM口通过一条PC/PPI编程电缆连到PLC的编程口上。这说明,PC实际上是可以通过串口同S7-200 CPU通讯。只是我们不知道通讯协议而已。通过截获PC机串口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过串口向PLC发送报文,以验证这些指令报文是否正确。本着这一思想,我们采用以下步骤获得这些报文。

plc和以太网通讯协议

编号:_______________本资料为word版本,可以直接编辑和打印,感谢您的下载 plc和以太网通讯协议 甲方:___________________ 乙方:___________________ 日期:___________________

plc和以太网通讯协议 篇一:西门子S7-1200与s7-300plc的以太网tcp及isoontcp 通信 1. 概述 1.1S7-1200 的pRoFinet 通信口 s7-1200cpu本体上集成了一个pRoFinet通信口,支持以太网和基于tcp/ip 的通信标准。使用这个通信口可以实现s7-1200cpu与编程设备的通信,与hmi触摸屏的通信,以及与其它cpu之间的通信。这个pRoFinet物理接口是支持10/100mb/s的Rj45 口,支持电缆交叉自适应,因此一个标准的或是交叉的以太网线都可以用于这个接口。 1.2s7-1200支持的协议和最大的连接资源 s7-1200cpu的pRoFinet通信口支持以下通信协议及服务tcp isoontcp(RcF1006)s7 通信(服务器端) 通信口所支持的最大通信连接数 s7-1200cpupRoFinet 通信口所支持的最大通信连接数如下:3个连接用于hmi(触摸屏)与cpu的通信1个连接用于编程设备(pg)与cpu的通信

8个连接用于openie(tcp,isoontcp) 的编程通信,使用 t-block 指令来实现3个连接用于s7通信的服务器端连接, 可以实现与s7-200 , S7-300以及S7-400的以太网s7通信 s7-1200cpu可以同时支持以上15个通信连接,这些连接数是固定不变的,不能自定义。tcp (transportconnectionprotocol ) tcp是由RFc793描述的标准协议,可以在通信对象间建立稳定、安全的服务连接。如果数据用tcp协议来传输,传 输的形式是数据流,没有传输长度及信息帧的起始、结束信息。在以数据流的方式传输时接收方不知道一条信息的结束和下一条信息的开始。因此,发送方必须确定信息的结构让接收方能够识别。在多数情况下tcp应用了 ip(internetprotocol) ,也就是“ tcp/ip 协议”,它位于 iso-osi参考模型的第四层。协议的特点: 与硬件绑定的高效通信协议 适合传输中等到大H的数据(一个基于连接的协议 可以灵活的与支持tcp协议的第三方设备通信具有路由兼容性只可使用静态数据长度有确认机制 使用端口号进行应用寻址 大多数应用协议,如telnet、Ftp都使用tcp 使用send/ReceiVe编程接口进行数据管理需要编程来 实现1.3硬件需求和软件需求硬件:

3-工业以太网协议--接口定义

工业以太网--接口定义 (方垒2005.1.4) 目的: 为了节约时间,将工业以太网协议开发与应用开发并行进行,我们通过“接口定义讨论稿”――>“讨论”――>“接口定义”正式版的方式来预先定义“应用开发”使用“工业以太网协议”的方式。该接口定义直接关系到应用开发和协议开发双方后期工作是否能顺利进行,所以请相关人员务必重视,详细考虑以下接口,最终确定的接口应该是:即能够满足应用开发需求,对于协议开发方又是简洁可实现的。 接口定义: 支持基于报文的节点间任意点对点通讯以及广播通讯方式,每个数据包必须在以太网物理帧的限定之内,即1500字节: 物理帧:6 + 6 +2 +[46-1500] +4CRC 字节 对应:目的地址+源地址+类型+数据区+32bit校验和 提供C语言编写的接收、发送API接口,该接口是: ◆非面向连接的 ◆非阻塞的 ◆支持类似UDP的“端口”的概念。且多个进程可同时操作工业以太网接口。 接口原形如下: #ifndef IEAPI_H #define IEAPI_H /*应用层使用的消息包头, 与HS2000CAS、MACSx消息结构兼容, 例如:10号站的B机端口20要从系统网发送1000字节长的消息给1号站A、B两机端口21,则消息格式如下: int Length =1000。 BYTE Type =4; BYTE Protocol =xx; BYTE SID =10; BYTE SIDEXT =00000010B; BYTE DID =1;

BYTE DIDEXT =00000011B(即3); BYTE Reserved[4] ={0,0,0,0}; BYTE srcPort = 20; BYTE dstPort =21; */ #define TYPE_CMD 0/*工业以太网协议控制通道*/ #define TYPE_RNET 3/*备份网*/ #define TYPE_SNET 4/*系统网*/ #define INDEX_SNETA 0/*系统网A*/ #define INDEX_SNETB 1/*系统网B*/ #define INDEX_RNET 2/*备份网*/ typedef struct s_MsgHead{ unsigned long Length; /*纯数据的长度,注意,不包括该头的长度16字节,只是后面数据部分的长度。*/ unsigned char Type; /*消息类型,3:备份网,4:系统网*/ unsigned char Protocol;/*协议号*/ unsigned char SID;/*源节站号,*/ unsigned char SIDEXT;/*源节子站号,*/ unsigned char DID;/*目的站号,比如:10号站A或B机,都填10,注意:DID = 0表示广播,网上所有节点都接收该报文*/ unsigned char DIDEXT;/*目的子站号,比如:10号站A机,则填00000001B,B机则填00000010B,AB机则填00000011B*/ unsigned char Reserved[4];/*保留*/ unsigned char srcPort;//源端口 unsigned char dstPort;//目的端口 }MsgHead; /*应用层消息结构*/ typedef struct s_Msg{ MsgHead Head;/*应用层使用的消息包头,与HS2000CAS、MACSx消息结构兼容*/ unsigned char Data[1514-14-8-sizeof(MsgHead)=1476];/*应用层使用的消息数据区*/ }Msg; /* 功能描述:初始化工业以太网协议,并设置本机节点号, 输入说明:nodeID定义,共8bit,最高bit:0表示A机、1表示B机,低位的6bits:站号, 例如: 10号站A机,则:nodeID=00001010B =0 +10 =10 10号站B机,则:nodeID=10001010B =128 +10 =138 输出说明:返回true:设置成功,false:设置失败 */

以太网采用的通信协议

竭诚为您提供优质文档/双击可除以太网采用的通信协议 篇一:以太网基础协议802.3介绍 802.3 802.3通常指以太网。一种网络协议。描述物理层和数据链路层的mac子层的实现方法,在多种物理媒体上以多种速率采用csma/cd访问方式,对于快速以太网该标准说明的实现方法有所扩展。 dixethernetV2标准与ieee的802.3标准只有很小的差别,因此可以将802.3局域网简称为“以太网”。 严格说来,“以太网”应当是指符合dixethernetV2标准的局域网。 早期的ieee802.3描述的物理媒体类型包括:10base2、10base5、10baseF、10baset和10broad36等;快速以太网的物理媒体类型包括:100baset、100baset4和100basex等。 为了使数据链路层能更好地适应多种局域网标准,802委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制llc(logicallinkcontrol)子层 媒体接入控制mac(mediumaccesscontrol)子层。

与接入到传输媒体有关的内容都放在mac子层,而llc 子层则与传输媒体无关,不管采用何种协议的局域网对llc 子层来说都是透明的。 由于tcp/ip体系经常使用的局域网是dixethernetV2而不是802.3标准中的几种局域网,因此现在802委员会制定的逻辑链路控制子层llc(即802.2标准)的作用已经不大了。 很多厂商生产的网卡上就仅装有mac协议而没有llc协议。 mac子层的数据封装所包括的主要内容有:数据封装分为发送数据封装和接收数据封装两部分,包括成帧、编制和差错检测等功能。 数据封装的过程:当llc子层请求发送数据帧时,发送数据封装部分开始按mac子层的帧格式组帧: (1)将一个前导码p和一个帧起始定界符sFd附加到帧头部分; (2)填上目的地址、源地址、计算出llc数据帧的字节数并填入长度字段len; (3)必要时将填充字符pad附加到llc数据帧后; (4)求出cRc校验码附加到帧校验码序列Fcs中; (5)将完成封装后的mac帧递交miac子层的发送介质访问管理部分以供发送;接收数据解封部分主要用于校验帧

各种工业以太网的区别其实就是协议的区别,其中最主要的还是应用层协议的区别。

各种工业以太网的区别其实就是协议的区别,其中最主要的还是应用层协议的区别。 都是以太网通讯,只是每个公司的叫法不一样,西门子用PROFINET、AB用Ethernet IP、施耐德的MODBUS TCP/IP。取个例子,以太网就像高速公路,Ethernet/IP、Profinet、Modbus TCP/IP分别像高速公路上的宝马、奔驰、奥迪车,都可以从一个城市把物品运送到另一城市。但是每个车上安装的零件无法和另一车上的零件进行更换。EtherCAT(以太网控制自动化技术)是一个以以太网为基础的开放架构的现场总线系统,EterCAT名称中的CAT 为ControlAutomation Technology(控制自动化技术)首字母的缩写。最初由德国倍福自动化有限公司(Beckhoff AutomationGmbH)研发。EtherCAT为系统的实时性能和拓扑的灵活性树立了新的标准,同时,它还符合甚至降低了现场总线的使用成本。EtherCAT的特点还包括高精度设备同步,可选线缆冗余,和功能性安全协议(SIL3)。Ethernet/IP是一个面向工业自动化应用的工业应用层协议。它建立在标准UDP/IP与TCP/IP协议之上,利用固定的以太网硬件和软件,为配置、访问和控制工业自动化设备定义了一个应用层协议西蒙公司开发 Ethernt/IP属于ODVA组织,Rockwell只是其中一个推广力度比较大的公司而已。施耐德也是ODVA组织的成员,施耐德所有PLC都可以支持Ethernt/IP协议。Ethernt/IP协议是十大总线之一,和Controlnet、Devicenet一起称为CIP总线。可以实现协议间路由,但是需要Rslinx软件进行配置。通讯时需要设置RPI参数,没有任何客户端的反馈信息,因此不管现场客户端是否收到数据,数据一致由服务器不断的发,缺少相应的检测。PROFINET由PROFIBUS国际组织(PROFIBUS International,PI)推出,是新一代基于工业以太网技术的自动化总线标准。作为一项战略性的技术创新,PROFINET为自动化通信领域提供了一个完整的网络解决方案,囊括了诸如实时以太网、运动控制、分布式自动化、故障安全以及网络安全等当前自动化领域的热点话题,并且,作为跨供应商的技术,可以完全兼容工业以太网和现有的现场总线(如PROFIBUS)技术,保护现有投资。PROFINET是适用于不同需求的完整解决方案,其功能包括8个主要的模块,依次为实时通信、分布式现场设备、运动控制、分布式自动化、网络安装、IT标准和信息安全、故障安全和过程自动化。 MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列通讯协议的派生产品。显而易见,它覆盖了使用TCP/IP协议的“Intranet”和“Internet”环境中MODBUS 报文的用途。协议的最通用用途是为诸如PLC’s,I/O模块,以及连接其它简单域总线或I/O模块的网关服务的。 MODBUS/TCP协议是作为一种(实际的)自动化标准发行的。既然MODBUS已经广为人知,该规范只将别处没有收录的少量信息列入其中。然而,本规范力图阐明MODBUS中哪种功能对于普通自动化设备的互用性有价值,哪些部分是MODBUS作为可编程的协议交替用于PLC’s的“多余部分”。 它通过将配套报文类型“一致性等级”,区别那些普遍适用的和可选的,特别是那些适用于特殊设备如PLC’s 的报文。 Modbus TCP/IP由Modbus IDA组织提出,有施耐德旗下的Modicon公司主推,在目前施耐德所有PLC产品中都支持,同时也支持Ethernet/IP协议,Modbus TCP/IP是免费的、全开放协议,可以用VB等高级编程语言调用winsock控件即可实现与PLC的数据通讯,因此,很多产品都支持该协议。同时利用该协议进行通讯时,可以得到客户端的数据校验返回,因此可靠性和安全性较高,当然牺牲了数据量。 POWERLINK=CANopen+Ethernet 鉴于以太网的蓬勃发展和CANopen在自动化领域里的广阔应用基础,EthernetPOWERLINK 融合了这两项技术的优点和缺点,即拥有了Ethernet的高速、开放性接口,以及CANopen在工业领域良好的SDO 和PDO 数据定义,在某种意义上说POWERLINK就是Ethernet 上的CANopen,物理层、数据链路层使用了Ethernet介质,而应用层则保留了原有的SDO和PDO对象字典的结构 虽然这些工业以太网都是国际标准,但是指的是IEC 61784里的标准,但是这些工业以太网不都是标准的以太网。即这些工业以太网并不都是符合IEEE802.3U的标准,这当中只有Modbus-TCP和EtherNet/IP是符合IEEE802.3U 的,只有符合IEEE802.3U标准的,才能与IT和以太网将来的发展相兼容。而不符合IEEE802.3U标准的,基本上可以讲不是以太网,它们都对以太网进行了修改,或者是硬件或者是软件,已经不是以太网了。 a. Modbus TCP和EtherNet/IP的区别主要是应用层不相同,ModbusTCP的应用层采用Modbus协议,而EtherNet/IP采用CIP协议,这两种工业以太网的数据链路层采用的是CSMA/CD,因此是标准的以太网,另外,这两种工业以太网的网络层和传输层采用TCP/IP协议族。还有一个区别是,Modbus协议中迄今没有协议来完成功能安全、高精度同步和运功控制等,而EtherNet/IP有CIPSafety、CIP Sync和CIP Motion来完成上述功能, ------来源网络,仅供参考

以太网透明传输协议

以太网透明传输协议 本文介绍以太网透明传输协议内容,让用户了解在串口转以太网协议上如何实现串口数据内容到以太网数据内容转化。 1.以太网透明传输的概念 通信协议是一种分层结构的,根据ISO的7层模型通信协议分为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。如果用户想通过卓岚ZLSN模块的以太网透明传输协议实现串口数据和以太网数据的转发,应用模型如图1所示。 图1. 以太网透明传输演示图 所谓以太网网络透明传输协议(简称为“以太网透传”)是指网络协议的应用层数据和串口协议的用户数据完全一致,不存在格式转化问题,形象地比喻为“透明传输”。比如网络数据应用层数据内容为字符“a”,那么串口协议的用户层数据也是“a”,用户电路板收到的数据也是字符“a”。 2.如何使用透明传输协议 那么用户数据是如何从计算机传给用户串口板的呢?这首先需要了解网络协议和串口协议的区别。 1.网络(TCP/IP)协议分为以太网层、IP层、TCP或UDP层、用户数据层。以太网层表示了网络通信介质,例如光纤、无线、有线以太网线。IP层中的关键点是包含了IP地址,IP地址是每个网络设备的地址。TCP或者UDP层的关键点是端口,端口用于区分一个IP地址下的多个应用程序。用户数据层携带用户需要传输的数据。 2.相对而言串口协议,没有IP层和TCP层这两层。 这里有两个问题: 1.串口协议如何弥补网络协议缺失的IP层和TCP层?实际上在ZLSN模块中已经保存了IP层、TCP层的关键点——IP地址和端口。每个ZLSN模块都具有一个可以设定的IP地址,同时也有一个TCP或者UDP的端口,这样计算机就可以通过这个“IP+端口”将网络数据发送给ZLSN模块。同样地ZLSN模块也保存了目的计算机的IP和端口,这样也可以将数据发送给计算机。联网模块内部保存的IP和端口解决了串口协议中没有IP和端口的问题。

Rx3i以太网接口模块之间的通信实例(EGD协议)

Application Note No: H- Rx3i以太网接口模块之间的通信实例(EGD协议)TABLE OF CONTENTS TABLE OF CONTENTS (1) REVISION HISTORY (1) 设备清单 (2) 硬件: (2) 软件: (2) 实验描述 (3) 功能说明: (3) 配置临时IP地址: (3) 配置以太网接口模块 (4) 配置EGD (5) 配置EGD接收和发送 (6) 参考资料: (8) REVISION HISTORY

设备清单 硬件: ?PACSystem RX3i, IC695CPU310 ?IC694ETM001 ?Laptop PC 软件: ?Proficy Machine Edition

实验描述 功能说明: 在本实验中,我们将演示两个Rx3i以太网接口模块之间通信的基本步骤。在应用层,我们采用EGD(Ethernet Global Data)协议,如下图所示。 本实验中采用的以太网接口模块为IC695ETM001(以下简称ETM001)。实验中采用的两台Rx3i PLC,以下简称为PLC 1和PLC 2。 实验主要包括以下步骤: 1.配置临时IP地址 2.配置以太网接口模块 3.配置EGD 4.配置EGD接受和发送 配置临时IP地址: 为了建立同编程器之间的初始通信,首先需要给PLC分配一个临时IP地址。当连接建立以后,实际IP地址可以通过编程器下载到ETM001。本实验中,PC 的IP地址和掩码分别为: 10.0.0.1, 255.255.255.0。 步骤如下:右键单击target名称,选择offline commands,然后选择Set Temporary IP Address。在Set Temporary IP Address对话框中,参照模块上的标识正确的填写MAC Address,并选择适当的临时IP地址。在本实验中,PLC-1的

工业以太网的常见协议

工业以太网的常见协议 摘要: 1 Modbus TCP/IP 该协议由施耐德公司推出,以一种非常简单的方式将Modbus 帧嵌入到TCP 帧中,使Modbus 与以太网和TCP/IP 结合,成为Modbus TCP/IP。这是一种面向连接的方式,每一个呼叫都要求一个应答,这种呼叫/应答... 1 Modbus TCP/IP 该协议由施耐德公司推出,以一种非常简单的方式将Modbus 帧嵌入到TCP 帧中,使Modbus 与以太网和TCP/IP 结合,成为Modbus TCP/IP。这是一种面向连接的方式,每一个呼叫都要求一个应答,这种呼叫/应答的机制与Modbus 的主/从机制一致,但通过工业以太网交换技术大大提高了确定性, 改善了一主多从轮询机制上的制约。 2 Profinet Profinet 由Siemens 开发并由Profibus International 支持,目前它有3 个版本,第一个版本定义了基于TCP/UDP/IP 的自动化组件。采用标准TCP/IP+ 以太网作为连接介质,采用标准TCP/IP 协议加上应用层的RPC/DCOM 来完成节点之间的通信和网络寻址。它可以同时挂接传统Profibus 系统和新型 的智能现场设备。现有的Profibus 网段可以通过一个代理设备(proxy)连接到Profinet 网络当中,使整套Profibus 设备和协议能够原封不动地在Profinet 中使用。传统的Profibus 设备可通过代理与Profinet 上面的COM 对象进行通 信,并通过OLE 自动化接口实现COM 对象之间的调用。它将以太网应用 于非时间关键的通信,用于高层设备和Profibus-DP 现场设备技术之间,以便

MPI协议和PPI协议有什么不同

竭诚为您提供优质文档/双击可除MPI协议和PPI协议有什么不同 篇一:通讯不同点 请教下大虾们,常说的总线有profibus、can、modbus、FF、devicenet等,这些是不是以走什么协议来命名的?那 我可以说:“它走can协议吗?”而常见的串口通信modbus,mpi, 据校验和。 在波特率一致、各站地址不同的情况下,ppi,mpi和pRoFibus可以同时在一个网络上运行,并且互不干扰。 这就是说如果一个网络上有s7-300、s7-200,s7-300 之间可以通过mpi或pRoFibus通信,而在同时在同一个网 络上的tp170如果在一个通信网络上存在其他主站(如td200,或者上位计算机等),同时需要进行micro/win的编程、监控,这就是多主站网络编程。 使用西门子的下列设备可以实现micro/win的多主站编程: micro触摸屏可以与一个s7-200cpu通信。 使用智能多主站电缆和micro/winV3.2sp4以上版本。

新电缆可以在网络上传递令牌,因而自动支持多主站网络编程。 如果使用cp卡,如cp5511/cp5512(笔记本电脑pcmcia 卡)、cp5611(台式机pci卡),能够支持多主站编程通信。 如果通过cp卡编程时,选择了mpi协议,注意mpi主站不能访问作为ppi主站的cpu。如果有第三方的产品要连接到多主站网络上,用户需要咨询第三方产品提供商以了解是否支持西门子的s7-200多主站网络。要进行多主站编程,不但编程计算机要支持,网上的其他设备也要有多主站通信能力。 早期的多主站连接依赖于计算机硬件和windows操作系统。随着计算机技术的发展,多数情况下已经不能做到多主站编程通信。建议用户使用西门子的多主站编程电缆或者cp 卡配合micro/win实现多主站编程通信。 4.mpi(multipointinterface)是simatics7多点通信的接口,是一种适用于少数站点间通信的网络,多用于连接上位机和少量plc之间近距离通信。 通过pRoFibus电缆和接头,将控制器s7-300或s7-400的cpu自带的mpi编程口及s7-200cpu自带的ppi通信口相互连接,以及与上位机网卡的编程口(mpi/dp口)通过pRoFibus或mpi电缆连接即可实现。网络中当然也可以不包括pc机而只包括plc。

相关主题