编程教育资源分享平台

网站首页 > 后端开发 正文

cip协议报文格式_EtherNet/IP协议基础知识

luoriw 2024-04-04 12:49:19 后端开发 10 ℃ 0 评论

一、EtherNet/IP基础概念

1.ODVA组织简介

ODVA成立于1995年,是一个全球性协会,其成员包括世界领先的自动化公司。ODVA的使命是促进工业自动化中开放的,可互操作的信息和通信技术。ODVA将其独立于媒体的网络协议,通用工业协议或“CIPTM”以及CIP的网络改进版EtherNet/IPTM,DeviceNetTM , CompoNetTM和ControlNetTM视为其核心技术。其负责的主要内容有:

1) 设备的一致性测试认证与互操作;

2) 授权EtherNet/IP技术;

3) 发放Vendor ID代表厂商设备信息;

4) 其下的SIG小组负责各类规范、方针等内容的制定。

2.EtherNet/IP基础架构

2.1 EtherNet/IP OSI参考模型


EtherNet/IP的ISO/OSI参考模型如上图所示,其物理层、链路层、网络层、传输层均与标准以太网相同,特点在于其在传输层之上增添了一个封装层,对来自应用层的数据进行报文格式的封装;而应用层采用的是CIP协议,满足其在工业自动化领域的一些功能和服务。

特点:

1) 服务于各类工业自动化应用;

2) 基于标准的IEEE802.3与TCP/IP Suite;

3) 应用层采用通用工业协议CIP;

4) IT集成,包括Web、OPC等服务;

5) 物理层实现基于标准的以太网控制器;

6) 规定了特定的传输端口,UDP/IP(PORT 44818),TCP/IP(PORT 44818)。

2.2 EtherNet/IP 各层功能特点

2.2.1 物理层:

1)传输介质可选铜缆双绞线或光纤;

2)几乎可以容纳无限数量的点对点节点;

3)可以通过嵌入式交换机技术和设备级环网技术来实现线型、星型和环网拓扑;

4)可根据需求选择不同的物理接口:基本的以太网连接,支持COTS现成商用标准,适合IP 20应用;工业等级应用,需性能增强的RJ-45连接器,密封RJ-45连接器以及更紧凑的M12连接器,适合IP 67应用;

2.2.2 数据链路层与网络层:


EtherNet/IP的链路层帧格式如上图所示,与标准以太网没有区别,遵循IEEE 802.3规范设计,并支持全双工传输。


同时网络层与传输层也使用TCP/IP与UDP/IP进行传输,两种方式分别传输两种不同的消息:TCP/IP是面向连接的点对点传输,并且传输的是封装CIP explicit messages(显示消息),主要用于配置信息与诊断数据的传输;UDP/IP是单对多的广播传输,主要用于实时性要求较高的数据传输,并由Timeout机制检测是否传输出错。

2.2.3 Encapsulation封装协议

2.2.3.1 主要功能


实时性要求不同的数据会采用不同的封装形式与传输形式:实时性要求不高的数据会采用CPF(Common Packet Format通用包格式)+Encapsulation的封装,走TCP/IP传输通道;而实时性要求较高的数据仅采用CPF封装,并走UDP/IP传输通道。封装层主要功能如下:

1) 解除IP网络的CIP消息封装;

2) 将CIP消息包装为以太网消息;

3) 会话管理;

4) 与下层TCP/IP协议层以及TCP/IP堆栈进行交互。

2.2.3.2 封装结构






EtherNet/IP的以太网包与其中的封装部分结构如上图所示,其中封装部分各细分部分功能如下:

Command:代表该包的功能和作用;

Length:指示后方数据域的长度;

Session Handle:会话句柄,表示会话建立或响应的请求;

Status:指示改包的命令有无正确执行,可比对状态码表进行确认;

Sender Context:包含描述发送者信息的内容;

Options:可选设置;

Command-specific Data:根据命令的不同有所区别

2.2.3.3 命令类型



2.2.3.4 命令特定数据域(CPF)结构



数据域部分的结构如上图所示,其结构为1个1个的item的连接,其每种item的含义如下:

① Item Count:指示该包数据域中item的总个数;

② Address Item:存放目的地地址信息:

Type ID:地址类型;

Length:地址长度;

Data:地址具体数值;

③ Data Item:存放数据信息:

Type ID:数据类型;

Length:数据长度;

Data:具体数据,封装了CIP报文包的内容,包含CIP命令、请求路径等内容;

2.2.4 传输层的消息类型

2.2.4.1 显式消息

应用:非周期性从端数据的读写

特点:

①报文中包含地址项和服务请求(命令);

②通常用于两个站点之间的通用通信路径;

③面向逻辑连接的连接方式,点对点传输,请求对应响应;



上图中,Command的值为0x6F,指示该报文为SendRRData,其上半部分的结构为封装报文头结构,下半部分为命令特定数据域结构,与前文提到的报文结构基本无异。

2.2.4.2 隐式消息

应用:实时的IO应用数据交互

特点:

①报文中没有地址项,也没有服务请求(命令);

②通过Connection ID来确定任务目标;

③生产者与(一或多个)消费者之间的特殊通信路径;

④点对点或多播;



上图的报文结构中,不含有封装协议报文头,且命令特定数据域中的地址项与数据均固定,通过Connection ID来标识访问的数据。

2.2.5 EtherNet/IP 应用层-CIP



基本原理:以是否存在实时性要求为依据,划分数据的优先级,区别对待不同优先级的数据。具体的协议内容,将单独成篇进行介绍。

2.3 EtherNet/IP 特点总结

①在标准以太网基础上建立,而不仅仅是与之兼容;

②多种数据传输速率:10、100、1000Mbit/s;

③可以使用标准基础架构来构建系统;

④可以使用IP路由器将网络构建为子网;

⑤使用IP寻址进行所有通信,完全支持跨子网的通信,因此网络中几乎没有节点数量限制;

⑥非实时通信和实时通信可以在同一子网中共存;

⑦支持协调驱动和运动控制;

⑧支持设备级环网(DLR),该环网通过介质冗余提供单容错能力;

⑨与其他上层协议(如HTTP,FTP,VOIP等)共存;


声明:本文转发自:https://blog.csdn.net/weixin_47677928/article/details/108535045

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表
最新留言