工业以太网之战:EtherCAT是如何杀出重围的?
前言
EtherCAT 是一种开放的实时工业以太网协议,由德国倍福公司开发并在 2003 年 4 月的汉诺威工业博览会上首次亮相,目前由 EtherCAT 技术协会(ETG)进行维护和推广。经过 21 年的不断发展,EtherCAT 显示出极强的生命力并在众多工业通信协议中脱颖而出。
首先,我们从 ETG 的官方数据中看几组数据,截止到 2024 年 7 月:
-
ETG 会员数量超过 7700 个,分布在六大洲,75 个国家;
-
EtherCAT 可在 40 多种不同的 RTOS 上实现,官方《EtherCAT 产品指南》中收录了 1300 多种产品
-
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 从站设备对外连接的首选产品。
相关文章:

工业以太网之战:EtherCAT是如何杀出重围的?
前言 EtherCAT 是一种开放的实时工业以太网协议,由德国倍福公司开发并在 2003 年 4 月的汉诺威工业博览会上首次亮相,目前由 EtherCAT 技术协会(ETG)进行维护和推广。经过 21 年的不断发展,EtherCAT 显示出极强的生命…...

轻量级可视化数据分析报表,分组汇总表!
什么是可视化分组汇总表? 可视化分组汇总表,是一种结合了数据分组、聚合计算与视觉呈现功能的数据分析展示功能。它能够按照指定的维度(如时间、地区、产品类型等)对数据进行分组,还能自动计算各组的统计指标…...

初始Python篇(4)—— 元组、字典
找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏: Python 目录 元组 相关概念 元组的创建与删除 元组的遍历 元组生成式 字典 相关概念 字典的创建与删除 字典的遍历与访问 字典…...

C#中正则表达式
在C#中,正则表达式由 System.Text.RegularExpressions 命名空间提供,可以使用 Regex 类来处理正则表达式。以下是一些常见的用法及示例。 C# 中使用正则表达式的步骤: 引入命名空间: using System.Text.RegularExpressions; 创…...

【python写一个带有界面的计算器】
python写一个带有界面的计算器 为了创建一个带有图形用户界面(GUI)的计算器,我们可以使用Python的tkinter库。tkinter是Python的标准GUI库,它允许我们创建窗口、按钮、文本框等GUI元素。 下面是一个简单的带有GUI的计算器示例&a…...

K230获取单摄像头的 3 个通道图像并显示在 HDMI 显示器上
本示例打开摄像头,获取 3 个通道的图像并显示在 HDMI 显示器上。通道 0 采集 1080P 图像,通道 1 和通道 2 采集 VGA 分辨率的图像并叠加在通道 0 的图像上。 # Camera 示例 import time import os import sysfrom media.sensor import * from media.dis…...

nginx中的HTTP 负载均衡
HTTP 负载均衡:如何实现多台服务器的高效分发 为了让流量均匀分配到两台或多台 HTTP 服务器上,我们可以通过 NGINX 的 upstream 代码块实现负载均衡。 方法 在 NGINX 的 HTTP 模块内使用 upstream 代码块对 HTTP 服务器实施负载均衡: upstr…...

package.json 里的 dependencies和devDependencies区别
dependencies(依赖的意思): 通过 --save 安装,是需要发布到生产环境的。 比如项目中使用react,那么没有这个包的依赖就会报错,因此把依赖写入dependencies npm install <package-name>// 缩写 np…...

【功能安全】HARA分析中的SEC如何确认
目录 01 SEC介绍 02 SEC怎么定义 📖 推荐阅读 01 SEC介绍 SEC定义 S代表safety,E指的是Exposure,C指的是Controllability ASIL等级就是基于SEC三个参数确定下来的。 计算公式:10=D,9=C,8=B,7=A,<7=QM 举例:S3-C2-E4,即3+2+4=9,ASIL C 02 SEC怎么定义 Safe…...

阿里云Docker镜像源安装Docker的步骤
阿里云 Docker 镜像源安装 Docker 的步骤: 1. 更新包管理器: sudo apt update 2. 安装 Docker 的依赖包: sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release 3. 添加阿里云 Docker 镜像源 GP…...

得一微全资子公司硅格半导体携手广东工业大学,荣获省科学技术奖一等奖
10月17日,全省科技大会在广州召开,会上颁发了2023年度广东省科学技术奖。得一微电子旗下全资子公司深圳市硅格半导体有限公司(以下简称“硅格半导体”)与广东工业大学(以下简称:广工大)携手多家…...

@SneakyThrows不合理使用,是真的坑
public static void main(String[] args) {int a 1;int b 2;String result getResult(a, b);System.out.println(result);}SneakyThrowspublic static String getResult(Integer a,Integer b){if (a.equals(b)){return "成功!";}else{throw new Interru…...

怎么把ppt页面切换为竖页?首推使用这个在线ppt工具!
熟悉ppt的朋友都知道,最常见的ppt演示文稿为横版样式,且一旦确定了ppt的版式,后续所有页面会保持相同的大小,但有时横版不能满足我们需求,想单独把其中一页或多页变为竖页,Office Powerpoint就无能为力了。…...

【JavaEE】——自定义协议方案、UDP协议
阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 一:自定义协议 1:自定义协议 (1)交互哪些信息 &…...

python爬虫快速入门之---Scrapy 从入门到包吃包住
python爬虫快速入门之—Scrapy 从入门到包吃包住 文章目录 python爬虫快速入门之---Scrapy 从入门到包吃包住一、scrapy简介1.1、scrapy是什么?1.2、Scrapy 的特点1.3、Scrapy 的主要组件1.4、Scrapy 工作流程1.5、scrapy的安装 二、scrapy项目快速入门2.1、scrapy项目快速创建…...

【Photoshop——肤色变白——曲线】
1. 三通道曲线原理 在使用RGB曲线调整肤色时,你可以通过调整红、绿、蓝三个通道的曲线来实现黄皮肤到白皮肤的转变。 黄皮肤通常含有较多的红色和黄色。通过减少这些颜色的量,可以使肤色看起来更白。 具体步骤如下: 打开图像并创建曲线调…...

[python]从零开始的API调用教程
一、API是什么? API即应用程序编程接口,是一组定义了不同软件系统或组件之间如何交互的规则和协议。API为开发者提供了一种简化的方式,通过预定义的函数或方法,来使用某个软件、库、操作系统或硬件的功能,而不需要深入…...

FFmpeg 怎样根据图片和文本生成视频
使用FFmpeg根据图片和文本生成视频,你可以使用image2过滤器来处理图片,并使用subtitles过滤器来添加文本。以下是一个基本的命令行示例,它将图片转换为视频,并将文本作为字幕叠加: ffmpeg -loop 1 -i image.jpg -vf &…...

paddlepaddle显存未正常释放
NVIDIA GPU 显存未正常释放 问题描述 paddlepaddle 训练过程出现问题中断等导致GPU显存没有释放。 情况1: 使用nvidia-smi -l查看显存占用情况,输出结果中没有显示PID,但是有显存占用。 解决方法 使用killall python 直接kill掉所有python进程。假如运行此命…...

websocket的使用
1.引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency> 2.配置websocket服务 Configuration public class WebSocketConfig {/*** 配置WebSocket服…...

docker如何建立本地私有仓库,并将docker镜像推到私有仓库
在 Docker 中,您可以通过 Docker Registry 创建本地私有仓库,并将 Docker 镜像推送到这个私有仓库。以下是具体步骤: 步骤 1:启动一个本地 Docker 私有仓库 拉取 registry 镜像: Docker 官方提供了一个 registry 镜像…...

vllm启动大语言模型时指定chat_template
问题介绍 在Linux下启动vllm: python3 -m vllm.entrypoints.openai.api_server --host 0.0.0.0 --model /model/Baichuan2-7B-Chat --trust-remote-code --gpu-memory-utilization 0.80使用下面的命令测试出错: curl -X POST \http://127.0.0.1…...

网络相关(HTTP/TCP/UDP/IP)
网络相关 常见的状态码 100 临时响应 100 继续,请求者应当继续提出请求101 切换协议200 成功响应 200: 服务器成功处理请求201 以创建,请求成功并且服务器创建了新的资源202 已接受:服务器已接受请求,但尚未处理203 非授权信息:服务器已成功处理请求,但返回的信息可能来…...

TF卡长期不用会丢失数据吗?TF卡数据恢复容易吗?
在现代科技快速发展的时代,TF卡(TransFlash卡)作为便携式存储设备,广泛应用于手机、相机、无人机等多种电子设备中,成为我们日常存储照片、视频、文档等重要数据的得力助手。然而,关于TF卡长期不使用是否会…...

Flink状态一致性保证
前言 一个Flink作业由一系列算子构成,每个算子可以有多个并行实例,这些实例被称为 subTask,每个subTask运行在不同的进程或物理机上,以实现作业的并行处理。在这个复杂的分布式场景中,任何一个节点故障都有可能导致 F…...

前端一键复制解决方案分享
需求背景 用户需要对流水号进行复制使用,前端的展示是通过样式控制,超出省略号表示,鼠标悬浮展示完整流水号。此处的鼠标悬浮展示采用的是:title,这样就无法对文本进行选中。 下面是给出一键复制的不同的解决方案,希望…...

麒麟操作系统swap使用率过高的排查思路
现象:用户业务环境服务器在运行时,监控平台告警swap使用99%,在系统内查询物理内存使用39%左右,swap使用达99%。 问题排查: 1)使用命令查询使用了swap空间的进程并排序:for i in cd /proc;ls |gr…...

爬虫python=豆瓣Top250电影
主流程:获取数据,解析数据,保存数据 from bs4 import BeautifulSoup #网页解析获取数据 import re #正则表达式 import urllib.request,urllib.error #获取网页数据 import sqlite3 #轻量级数据库 import xlwt #进行excel操作 #影视详情…...

【Eclipse系列】解决Eclipse中xxx.properties文件中文乱码问题
问题描述:由于eclipse对Properties资源文件的编码的默认设置是ISO-8859-1,所以在打开.properties文件时,会发现中文乱码了,如图: 解决方法: 1、一次生效法 右击该properties文件–>properties–>Re…...

mysql主从复制及故障修复
一、主MySQL数据库的配置 分别在三台主机(chen2/10.110、chen3/10.120、chen4/10.130)中安装mysql数据,其中chen2/10.110作为主MySQL服务器,其余两台作为从MySQL服务器。 1、在主机上部署mysql数据库 详细的请看上一篇:mysql数据…...