工业以太网之战:EtherCAT是如何杀出重围的?

news2024/11/27 0:37:42

前言

EtherCAT 是一种开放的实时工业以太网协议,由德国倍福公司开发并在 2003 年 4 月的汉诺威工业博览会上首次亮相,目前由 EtherCAT 技术协会(ETG)进行维护和推广。经过 21 年的不断发展,EtherCAT 显示出极强的生命力并在众多工业通信协议中脱颖而出。

首先,我们从 ETG 的官方数据中看几组数据,截止到 2024 年 7 月:

  1. ETG 会员数量超过 7700 个,分布在六大洲,75 个国家;

  2. EtherCAT 可在 40 多种不同的 RTOS 上实现,官方《EtherCAT 产品指南》中收录了 1300 多种产品

  3. EtherCAT 安装节点数量达到了 7700 万个,仅 2023 年一年就新增了 1800 万个节点。这一增长是基于实际销售的 EtherCAT 芯片数量,不包括总线模块中使用的芯片。

其次,我们从 HMS Networks 2024 年发布的《全球工业网络市场份额预测报告》中可以看到 EtherCAT 的市场份额是 16%,排名第 3,仅次于 PROFINET(23%)和 EtherNet/IP(21%)。

我们查阅和整理了过去十年 HMS 发布的《全球工业网络市场份额预测报告》,发现 EtherCAT 协议在新安装节点的市场份额一直稳步提升,尤其是 2024 年,预计将增加四个百分点。

最后,从应用行业来看 EtherCAT 已经在机器人、半导体、光伏、医疗、机床、自动化装配、舞台控制等多个领域都有广泛的应用。特别是在运动控制领域,其已经成为一种主流的通讯技术方案。

通过以上信息和数据可以看出 EtherCAT 在工业通信协议领域取得了很大的成功,特别是在强手如云的工业以太网领域能够突出重围,一定是有其原因的,下面小编就展开分析一下。


为什么 EtherCAT 能够取得如此成功呢?

时机好:赶上了工业以太网快速崛起的浪潮

1975 年,美国施乐公司(XEROX)提出以太网并申请专利。到 1986 年,出现了第一批现场总线,这其中以 1979 年推出的 Modbus 协议为标志。下图展示了一个早期工业系统的机柜,可以看到机柜中密密麻麻的线缆。现场总线出现后,极大地减少了线缆的数量。到 1995 年,市场上大约有 40 余种现场总线,这也是现场总线最繁荣的时期。

在 2000 年前后,由于对更高通信速率和更多数据量的需求,现场总线种类逐渐减少,取而代之的是一批工业以太网协议的出现。现在我们熟知的工业以太网协议大多都是这个时候出现的。如:

  • 1999 年,Modbus TCP 协议发布
  • 2000 年,EtherNet/IP 协议发布
  • 2001 年,POWERLINK 协议发布
  • 2002 年,PROFINET 协议发布
  • 2003 年, EtherCAT 协议发布

通过 20 年的发展,工业以太网协议逐渐成熟并被广大的设备制造商和最终用户所接受。我们从 2014-2024 年 HMS 发布的《全球工业网络市场份额预测报告》中可以看到工业以太网类协议和现场总线类协议的发展和变化。在这 11 年间,工业以太网与现场总线的角色完成互换,设备制造商和用户在新的项目中大部分会优先选择工业以太网作为通信方式。

这背后的底层逻辑是:随着时间的发展,用户的需求不断增多且更加灵活,导致设备传输的数据量越来越多,而现场总线一般传输速度低且单帧携带的数据量少(已知的现场总线最快传输波特率是 12M bps,单帧单方向携带的数据最多 244 个字节—PROFIBUS DP)。因此,传统的现场总线技术发展到 20 世纪 90 年代后期时遇到了传输速率和数据量的瓶颈,这也为工业以太网技术的诞生和发展提供了良好的机遇。

凭借这个机遇,多个工业以太网协议都迎来了快速的发展并成为当今的主流工业通讯协议,其中也包括 EtherCAT。

策略好:兼容 CANopen 通信机制

在 EtherCAT 出现之前,市面上几乎所有品牌的伺服驱动器都支持 CANopen 协议。EtherCAT 选择了一个非常明智的策略—兼容 CANopen 通信机制。

通过 CoE (CAN application protocol over EtherCAT)功能,EtherCAT 提供了与 CANopen 标准相同的通信机制:对象字典、PDO 映射(过程数据对象)和 SDO(服务数据对象)–甚至连网络管理也类似。这使得在以前安装有 CANopen 的设备上实施 EtherCAT 成为可能,而且 CANopen 固件的大部分甚至都可以重复使用。此外,还可以选择放弃传统的 8 字节 PDO 限制,并利用 EtherCAT 增强的带宽支持整个对象字典的上传。设备配置文件(如驱动器配置文件 CiA 402)也可在 EtherCAT 中重复使用。

通过这种技术策略,原有的 CANopen 伺服驱动器切换到 EtherCAT 非常简单,这使得 EtherCAT 在运动控制领域迅速取得成功。

高性能、高效率

EtherCAT 基本上是速度最快的工业以太网技术,它的最快通讯周期时间可以小于 100µs 且它的同步精度达到了纳秒级。这得益于它独特的通讯机制:

EtherCAT 技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT 从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见下图)。整个过程中,报文只有几纳秒的时间延迟。

过程数据即时插入到报文中

由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达 90%以上。100 Mb/s TX 的全双工特性完全得以利用,因此,有效数据率可 大于 100 Mb/s(即大于 2 x 100 Mb/s 的 90%)(参见下图)。

带宽利用率的比较

_EtherCAT 主站是网段内唯一允许主动发送 EtherCAT 帧的节点,所有其他节点只是向下游转发帧。这一概念避免了不可预测的延迟,并保证了实时性。 —— 来自 ETG 官网

这种实时性对于通过总线系统控制或测量目标系统的所有应用来说都是一个巨大的优势。快速的反应时间缩短了工艺步骤之间转换的等待时间,从而显著提高了应用效率。

与其他总线系统相比,EtherCAT 系统结构通常可将 CPU 负载降低 25 - 30%(周期时间相同)。

成本低

成本低主要体现在以下三个方面:

  • BOM 成本:EtherCAT 主站设备,对底层硬件没有特别要求,只需标准的以太网接口即可,无需特定的接口卡或处理器,一般通过 EtherCAT 协议栈实现;EtherCAT 从站设备,也对 MCU 没有高性能要求,主要功能和性能的保障都由 ESC 芯片完成。市面上的 ESC 芯片提供商很多,选择很丰富,价格也不贵。
  • 系统实施成本:EtherCAT 可以支持多种拓扑结构,如:线型、星型、树型以任意组合。且 EtherCAT 不需要交换机或集线器即可适用于各种拓扑结构,这极大地简化了系统的系统实施时间和成本;
  • 后期维护成本:EtherCAT 不仅配置简单,检测和维护也很容易。地址可以自动分配,无需手动设置。具备自动链接检测功能,节点和网段可在运行中断开及重新连接。线型拓扑可以拓展为环形拓扑,实现线缆冗余。主站设备仅需第二个以太网口,而从站设备已具备冗余功能,因此可在机器运转过程中进行设备交换。这些特性都大大简化了后期维护的成本。
优秀完善的生态

这方面 EtherCAT 技术协会(ETG)功不可没。ETG 是目前比较活跃的现场总线用户组织,他们不仅负责更新和维护 EtherCAT 规范,还会向用户和供应商提供 EtherCAT 相关培训。除此之外,他们每年都会在世界各地举行研讨会和参加各种展会,宣传 EtherCAT 的同时也帮助会员推广他们的产品。因此,我们在文章开头就看到其会员数量已达到 7700 个,这一数字在现场总线类用户组织中是非常亮眼的,ETG 已成为世界上最大的工业以太网总线用户组织。

ETG 的会员中大致可以分成三类:方案提供商、设备制造商和最终用户。设备制造商有 3000 多家,其中 245 家主站供应商、224 家伺服驱动器供应商、168 家 I/O 供应商,除此之外还有一些传感器、执行器和安全产品的供应商。这些厂商都对外贡献更多可选择的 EtherCAT 产品及方案,进一步促进了行业生态的繁荣。


用户在 EtherCAT 的使用中遇到的问题和挑战

EtherCAT 凭借其显著的优点,近几年被越来越多的设备制造商作为其设备的标准通讯接口推向市场,这使得 EtherCAT 在工业通讯市场的份额快速增长。

如前文《市场份额预测报告》所示,PROFINET 和 EtherNet/IP 的市场份额也很大,甚至在某些行业和地区多于 EtherCAT。所以,在市场上有众多机器制造商和系统集成商还是习惯于采用西门子,罗克韦尔,施耐德,三菱等主流 PLC 作为其机器和工厂系统的主控制器。但问题也随之而来,这些主流 PLC 大部分不能支持 EtherCAT 主站通信功能,这使得用户在方案设计中,一旦涉及到采用 EtherCAT 接口的设备,就会面临如何连接和转换的问题。

HMS 作为工业通讯领域的领导者和专家,接到了大量来自工厂自动化和半导体行业用户关于 EtherCAT 从站设备和 PLC 互联的网关方案咨询,我们发现大部分用户在选择这种转换时面临的问题和顾虑是一样的,例如:

  • 连接是否稳定可靠?
  • 是否能保证实时性?
  • 数据量是否足够大?
  • 使用是否简单?是否需要安装专用配置软件?
  • 是否有专业的技术支持来保障?
  • 批量使用时是否能获得价格支持?
  • 质保时间是多久?
  • 是否可以定制化?

横空出世,卓越非凡的 EtherCAT 主站网关

HMS 经过大量和细致的调研,充分分析了市场需求和用户的应用后,研发团队结合全新的 Anybus Communicator 网关平台,推出了 EtherCAT 主站网关系列。

网关的主要特点

支持多协议
可将 EtherCAT 从站设备轻松接入主流的工业以太网或 Profibus 总线中

低延迟
延时小于 1ms,可以满足运动控制的高要求

大数据量
数据量高达 1500 个字节,可最多连接 24 个 EtherCAT 从站

使用简单
以太网配置端口和基于浏览器的配置页面,无需安装任何软件,轻松连接和配置

低成本
得益于 BOM 成本的优化,网关价格比上一代 X-gateway 主站网关降低了 50%

高安全
最先进的安全设计在硬件和软件方面确保您配置和数据传输的安全

定制化
支持品牌贴标,定制 logo、型号、颜色等

超长质保
提供五年质保。选得安心,用得放心!

网关方案的优势
  • 快速实现连接,无需开发;
  • 设备客户通过网关节省了开发相关网络协议接口的成本;
  • 集成商通过网关增加了 PLC 端选择的灵活性。
相关应用

目前,HMS 的 EtherCAT 主站网关已经在半导体镀膜设备,光伏划焊一体机,电池产线机器人等多个高端应用领域批量配套,并得到了设备制造商和最终用户的一致认可。其工业美学设计的外观、简单易用的特点、卓越的性能表现以及极高的性价比,使之成为拓展 EtherCAT 从站设备对外连接的首选产品。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2220841.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2.1_Linux发展与基础

Linux基础知识 Shell 命令执行环境: 命令提示符的组成:(用户名主机名)-[当前路径]权限提示符,例:(kali㉿kali)-[~]$ ~ 表示所在目录为家目录:其中root用户的家目录是/root,普通用户的家目录在/home下 # 表示用户的权…

Python酷库之旅-第三方库Pandas(148)

目录 一、用法精讲 671、pandas.Timestamp.day_name方法 671-1、语法 671-2、参数 671-3、功能 671-4、返回值 671-5、说明 671-6、用法 671-6-1、数据准备 671-6-2、代码示例 671-6-3、结果输出 672、pandas.Timestamp.dst方法 672-1、语法 672-2、参数 672-3、…

JAVA二手交易发布闲置好物回收系统小程序源码

🎉二手交易新风尚!发布闲置好物,回收系统助你环保又赚钱✨ 🏠闲置物品大变身,开启绿色生活新篇章🌿 嘿宝贝们!是不是家里总有一些东西,明明还很新却因为种种原因被束之高阁&#x…

PROFINET开发或EtherNet/IP开发嵌入式板有用于工业称重秤

这是一个真实案例,不过客户选择不透露其品牌名称。稳联技术的嵌入式解决方案助力工业称重设备制造商连接至任意工业网络。多网络连接使得称重设备能够轻松接入不同的控制系统,进而加快产品的上市时间。 我们找到了稳联技术的解决方案。他们成熟的技术与专…

使用Shell脚本对Java应用等服务进行启停控制(支持批量)

通过shell脚本对Java服务启停进行控制。支持单个服务和多个服务的 start、stop、status、restart。支持自定义启动命令。(不限于Java服务,适用于各类通过命令行启动的服务) 脚本名称为 runjar.sh , 底部提供源码。通过三部分进行说明&#xf…

【Dv2Admin】Django配置线上ws反向代理

在 Web 应用程序的部署过程中,安全性、稳定性和实时通信是开发者们普遍关注的重点。Django 是一个非常流行的 Web 框架,常与 Nginx 配合使用,以便实现反向代理、负载均衡以及 SSL 加密等功能。除此之外,实时功能(如 WebSocket)也是现代应用中经常使用的技术。 在项目中实…

用户一键注册登录(一)- 对接短信平台

1. 流程图 2. 详细设计 2.1 用户表结构设计 CREATE TABLE users (id varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,mobile varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 手机号,nickname varchar(16) CHARACT…

回忆Web编程的岁月变迁

目录 引子 记忆的片断 CGI / ISAPI 何为 CGI / ISAPI ? 一个小插曲 ASP与我的ASP Builder ASP编程技术 何为 Windows DNA ? 什么是 COM ? ASP.NET 什么是 ActiveX ? IntraBuilder与我的InterBuilder 结尾 引子 凌晨三点醒了,大多的时候是…

数据结构(JAVA)JDK17语法新增特性

目录 yield关键字var关键字空指针异常密封类接口中的私有方法instanceof其他 yield关键字 yield关键字用于case的代码块中返回值。 正常switch语句 public static void main(String[] args) {int result 0;String str "a";switch (str) {case "a" :resu…

根据发生异常的汇编指令以及函数调用堆栈,从内存的角度出发,估计出问题的可能原因,确定排查方向,快速定位C++软件问题

目录 1、前言 2、初步分析dump文件 3、加载更多模块的pdb文件,可能能看到更多行的函数调用堆栈 4、从内存的角度去看,估计是访问了野指针导致的,沿着这个怀疑的方向快速地定位了问题 5、最后 C软件异常排查从入门到精通系列教程&#xf…

【安当产品应用案例100集】024-BYOE及BYOK在IaaS场景中的应用

在云计算环境中,尤其是涉及到敏感数据时,企业用户可能会选择自带加密工具或密钥(即BYOE或BYOK),以确保数据在传输和存储过程中的安全性。这种方式可以防止云服务提供商访问或泄露加密数据,增强数据保护。 …

离散数学 第二讲 特殊集合和集合间关系 笔记 [电子科大]王丽杰

1.2 特殊集合与集合间关系 空集 不含任何元素的集合叫做空集(empty set),记作∅. 空集可以符号化为 ∅ { x ∣ x ≠ x } ∅ \{ x|x ≠ x\} ∅{x∣xx} . 空集是绝对唯一的。 全集 针对一个具体范围,我们考虑的所有对象的集合叫做全集(universal se…

基于springboot招聘信息管理系统设计与实现(源码+定制+开发)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

视频美颜平台是如何搭建的?基于直播美颜SDK源码的开发技术详解

今天,笔者将详细讲解如何基于直播美颜SDK源码搭建视频美颜平台的技术路径。 一、理解视频美颜技术 视频美颜技术主要通过图像处理算法对视频流进行实时处理,包括肤色优化、瑕疵修复、面部特征增强等。实现这一目标需要高效的图像处理算法和稳定的实时渲…

5个最流行的图像嵌入模型对比

最近需要研究图像相似性搜索。我想知道基于架构训练方法的嵌入之间是否存在差异。但是,很少有博客比较几种模型之间的嵌入。因此,在这篇博客中,我将使用 Flickr 数据集 [6] 比较 EfficientNet [1]、ViT [2]、DINO-v2 [3]、CLIP [4] 和 BLIP-2…

Matlab软件进行金融时间序列数据的描述性统计代码

1、数据S&P500的收盘价格,return100*log(pt/pt-1) 方法1:用python代码 import numpy as np import pandas as pddef calculate_log_returns(prices):"""计算价格序列的对数收益率。参数:prices (numpy.array): 价格序列。返回:log_…

Mongodb基础用法【总结】

关系型数据库和非关系型数据库的区别 关系型数据库 1.在关系型数据库中,数据都是存储在表中的,对存储的内容有严格的要求 2.因为我们在创建表的时候久已经规定了表中的字段 存储的数据类型 是否为空 唯一标识等规则 3.由于操作的都是结构化的数据&#…

家政小程序搭建,数字化市场发展下的意义

家政服务行业作为当下社会生活中不可或缺的行业,需求量在逐渐增加,行业发展也趋向多样化。 随着数字化的浪潮,家政行业逐渐向数字化、智能化升级发展,推动行业高质量发展,迎合现代化发展趋势,这一转型为行…

83.【C语言】数据结构之顺序表的尾部插入和删除

目录 3.操作顺序表 2."伪"插入顺序表的元素 分析尾部插入函数SLPushBack 代码示例 SeqList.h main.c free(指针)出错的几种可能的原因 3."伪"删除顺序表元素 2.分析尾部删除函数SLPopBack 代码示例 错误检查 两种解决办法 1.判断size是否为负…

004-按照指定功能模块名称分组

按照指定功能模块名称分组 一、说明1.现在有一个需求:2.具体做法 二、代码案例三、效果展示 一、说明 1.现在有一个需求: 需要把一个功能模块的几个功能点放在同一个文档目录下,这几个功能点分布在不同的 Controller 2.具体做法 需要把他…