基于SEED-RT118X套件开发EtherCat从站(二)同步机制

原创 艾睿电子技术和方案 2024-06-20 12:00

继上一期基于SEED-RT118X套件开发EtherCAT从站(一)初识EtherCAT,这期为您带来该系列的第二篇。


EtherCAT系统通过采用Distributed Clocks(DC)机制,实现了卓越的同步功能。其从站控制器内的分布式时钟(DC)单元支持以下关键功能:

  • 确保从站(包括主站)之间的时钟精确同步
  • 生成用于协调动作的同步输出信号(SyncSignals)
  • 对输入事件进行高精度的时间戳标记(LatchSignals),以实现精确的时间记录
  • 触发同步中断,以确保系统各部分在预定时间点上协同工作
  • 实现数字输出的同步更新,确保数据的一致性
  • 同步数字输入的采样,以捕获实时数据


这些功能共同构成了EtherCAT系统的同步基础,为工业自动化应用提供了强大而可靠的同步解决方案。


EtherCAT从站的同步策略

在探讨多个EtherCAT从站如何实现同步时,我们首先知道,每个从站系统上电启动后都会拥有其独立的本地时钟。然而,这些本地时钟并不会自动与全球统一的时间(如2024年6月3日14点40秒)保持同步。为了确保从站间的同步性,EtherCAT系统引入了一个特定的策略。


首先,系统会设定一个EtherCAT系统时间,作为所有从站同步的基准。接着,主站会通过EtherCAT数据包将这个系统时间发送至每一个从站。一旦接收到这个系统时间,从站会将其本地时钟调整至与这个系统时间一致。这个被用作基准的系统时间被称为参考时钟。值得注意的是,参考时钟通常会被设定为第一个具有分布式时钟(DC)功能的从站控制器的时间,因为并非所有从站都具备DC功能。


在设定EtherCAT系统的时间同步之后,一个显而易见的问题是如何处理网络数据的传输延迟。为了准确补偿这一延迟,EtherCAT系统在初始化阶段会进行一项关键步骤——测量每个设备之间的传输延迟。这一测量过程对于确保整个系统的时间同步至关重要。


那么,这个延迟是如何测量的呢?我们来看下图:


上图展示了一个典型的EtherCAT网络及其各从站之间的网络延迟。在EtherCAT系统中,有些延迟可以基于EtherCAT的标准而默认为相同,例如每个从站处理单元的延迟,我们标记为tPA = tPB = tPC = tPD = tPE = tPF。这一延迟是指从从站接收到数据包开始,到该从站处理完并发出数据包为止的时间。正如之前所提,EtherCAT的通信机制类似于一辆“通信列车”,它在每个从站中的停留时间都是固定的。


此外,还有一种延迟也被默认为相同,即两个相邻从站之间的网络延迟,如Slave C和Slave D之间的tWCD= tWDC。tWCD表示从Slave C的EtherCAT控制器发出数据包开始,经过Slave C的PHY芯片发送通道、Slave C和Slave D之间的网线,以及Slave D的PHY芯片接收通道,最终到达Slave D的EtherCAT控制器的时间。反过来,tWDC则代表了数据包从Slave D到Slave C的相同传输路径所需的时间。为了确保这两个方向的延迟相同,我们需要选择具有稳定延迟特性的PHY芯片,以确保数据包在EtherCAT网络中的传输一致性。


基于上述的前提条件,我们首先建立如下公式来描述从站之间的延迟:

tCD = tPC + tWCD

tDC = tPD + tWCD


其中tP = tPC= tPD,所以会有:

tCD = tDC = tP+ tWCD


对于Slave C,时间点tC1 和tC0都可以记录下来,并且有如下关系:

tC1 = tC0 + tCD+ tDC


由于tCD = tDC,我们可以变换上述关系为:

tCD = tDC = (tC1 – tC0) / 2


通过这种方法,我们可以计算出Slave C和Slave D之间的网络延迟。类似地,其他从站之间的延迟也可以通过这种方法计算得出。


一旦我们获得了这些延迟数据,EtherCAT系统在初始化时,主站就可以根据这些数据对每个从站进行精确的延迟补偿。这样,网络数据传输延迟的问题就得到了有效的解决。


尽管已经通过初始化阶段的延迟补偿确保了从站间的同步,但细心的开发者会注意到另一个关键问题:时钟漂移。由于每个从站的本地时钟通常基于其内部的晶振或晶体,即使是高精度的设备,也可能存在微小的误差,如1ppm(百万分之一秒)。这种误差会导致从站本地时钟随时间产生漂移,对于高精度控制系统来说,这种累积误差是不可接受的。


为了消除这一影响,EtherCAT的分布式时钟(DC)系统具备了漂移补偿的功能。具体来说,主站会定期(且间隔不能过长)发送系统时间至各个从站。从站在接收到系统时间后,会与自己当前的本地时间进行比较。如果发现本地时钟较快,从站会相应地增加其计数周期以减缓时钟速率;反之,如果本地时钟较慢,则会减少计数周期以加速时钟速率。这种动态调整机制确保了从站的本地时钟能够持续跟随并校准至系统时间,从而有效防止了时钟漂移的累积,保证了整个EtherCAT系统时间同步的准确性和稳定性。


我们通过抓包工具看一下TwinCAT主站在工作时的数据包,如下图所示:


我们可以发现每个数据包中均包含一个ARMW命令。这一命令的核心功能在于读取第一个具备分布式时钟(DC)功能的从站的DC SysTime(寄存器地址为0x910)值,并将这一时间值写入后续从站的DC SysTime寄存器中。

以上几种机制确保了EtherCAT系统中所有带有DC功能的从站都能运行在同一个系统时钟下。


EtherCat从站的同步工作

那么,在从站时钟同步后,我们又是如何保证这些从站能够同步工作呢?EtherCAT从站控制器(ESC)为此提供了SyncSignals功能,这些信号能够与EtherCAT系统时间保持同步。SyncSignals不仅可以直接被使用(如作为中断触发),还能用于数字输出的更新和数字输入的采样。


此外,EtherCAT还支持LatchSignals,这些信号可以基于EtherCAT系统时间进行精确的时间戳标记。在实际应用中,我们可以将每个从站的sync0信号设置为以固定频率产生,并通过sync0触发相应的中断。在这些中断服务程序中,从站会执行预定的动作。由于所有从站的sync0信号是同时产生的,因此我们可以确保这些从站能够几乎同时执行我们期望的动作。例如,在i.MX RT1180这样的平台上,两个从站之间的sync精度可以达到25ns,这极大地提升了整个系统的同步性和响应速度。


sync1功能与sync0相似,而且可以设置为不同的频率,下面是几种不同的工作模式:


EtherCAT的分布式时钟(DC)功能除了提供sync信号以确保从站的同步性外,还包含两个latch信号。这两个latch信号能够捕获输入信号的上升边沿和下降边沿,并记录相应的时间戳,从而精确记录从站中特定事件的发生时间。这一功能极大地增强了EtherCAT系统的实时性和事件追踪能力。


SEED-RT118X开发套件源码的处理逻辑

现在,我们来看一下SEED-RT118X开发套件源码中针对DC中断的处理逻辑。

首先,看文件ecat_HW.c里函数HW_Init (void) 中关于中断的设置。


可以看到,程序把ECAT控制器的SyncOut0以及SyncOut1路由到了XBAR上,并使能了相应中断,然后我们再看一下下面对应的中断函数。

可以看到,SyncOut0以及SyncOut1对应同一个中断执行函数,进入中断函数后,会通过中断标志位判断是哪一个中断,然后再执行相应的代码。


相关阅读


扫一扫订阅新闻邮件,及时获取最新技术资讯


艾睿电子技术和方案 艾睿为数十万家领先的技术制造商和服务商驱动创新,致力于发展可帮助提升商业价值及改善生活的科技解决方案
评论
  • 本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。制作图片开机logo图片制作注意事项(1)图片必须为bmp格式;(2)图片大小不能大于4MB;(3)BMP位深最大是32,建议设置为8;(4)图片名称为logo.bmp和logo_kernel.bmp;开机
    Industio_触觉智能 2025-01-06 10:43 87浏览
  • 在智能家居领域中,Wi-Fi、蓝牙、Zigbee、Thread与Z-Wave等无线通信协议是构建短距物联局域网的关键手段,它们常在实际应用中交叉运用,以满足智能家居生态系统多样化的功能需求。然而,这些协议之间并未遵循统一的互通标准,缺乏直接的互操作性,在进行组网时需要引入额外的网关作为“翻译桥梁”,极大地增加了系统的复杂性。 同时,Apple HomeKit、SamSung SmartThings、Amazon Alexa、Google Home等主流智能家居平台为了提升市占率与消费者
    华普微HOPERF 2025-01-06 17:23 145浏览
  • 根据环洋市场咨询(Global Info Research)项目团队最新调研,预计2030年全球无人机锂电池产值达到2457百万美元,2024-2030年期间年复合增长率CAGR为9.6%。 无人机锂电池是无人机动力系统中存储并释放能量的部分。无人机使用的动力电池,大多数是锂聚合物电池,相较其他电池,锂聚合物电池具有较高的能量密度,较长寿命,同时也具有良好的放电特性和安全性。 全球无人机锂电池核心厂商有宁德新能源科技、欣旺达、鹏辉能源、深圳格瑞普和EaglePicher等,前五大厂商占有全球
    GIRtina 2025-01-07 11:02 68浏览
  • 彼得·德鲁克被誉为“现代管理学之父”,他的管理思想影响了无数企业和管理者。然而,关于他的书籍分类,一种流行的说法令人感到困惑:德鲁克一生写了39本书,其中15本是关于管理的,而其中“专门写工商企业或为企业管理者写的”只有两本——《为成果而管理》和《创新与企业家精神》。这样的表述广为流传,但深入探讨后却发现并不完全准确。让我们一起重新审视这一说法,解析其中的矛盾与根源,进而重新认识德鲁克的管理思想及其著作的真正价值。从《创新与企业家精神》看德鲁克的视角《创新与企业家精神》通常被认为是一本专为企业管
    优思学院 2025-01-06 12:03 119浏览
  •     为控制片内设备并且查询其工作状态,MCU内部总是有一组特殊功能寄存器(SFR,Special Function Register)。    使用Eclipse环境调试MCU程序时,可以利用 Peripheral Registers Viewer来查看SFR。这个小工具是怎样知道某个型号的MCU有怎样的寄存器定义呢?它使用一种描述性的文本文件——SVD文件。这个文件存储在下面红色字体的路径下。    例:南京沁恒  &n
    电子知识打边炉 2025-01-04 20:04 100浏览
  • PLC组态方式主要有三种,每种都有其独特的特点和适用场景。下面来简单说说: 1. 硬件组态   定义:硬件组态指的是选择适合的PLC型号、I/O模块、通信模块等硬件组件,并按照实际需求进行连接和配置。    灵活性:这种方式允许用户根据项目需求自由搭配硬件组件,具有较高的灵活性。    成本:可能需要额外的硬件购买成本,适用于对系统性能和扩展性有较高要求的场合。 2. 软件组态   定义:软件组态主要是通过PLC
    丙丁先生 2025-01-06 09:23 85浏览
  • 这篇内容主要讨论三个基本问题,硅电容是什么,为什么要使用硅电容,如何正确使用硅电容?1.  硅电容是什么首先我们需要了解电容是什么?物理学上电容的概念指的是给定电位差下自由电荷的储藏量,记为C,单位是F,指的是容纳电荷的能力,C=εS/d=ε0εrS/4πkd(真空)=Q/U。百度百科上电容器的概念指的是两个相互靠近的导体,中间夹一层不导电的绝缘介质。通过观察电容本身的定义公式中可以看到,在各个变量中比较能够改变的就是εr,S和d,也就是介质的介电常数,金属板有效相对面积以及距离。当前
    知白 2025-01-06 12:04 173浏览
  • 根据Global Info Research项目团队最新调研,预计2030年全球封闭式电机产值达到1425百万美元,2024-2030年期间年复合增长率CAGR为3.4%。 封闭式电机是一种电动机,其外壳设计为密闭结构,通常用于要求较高的防护等级的应用场合。封闭式电机可以有效防止外部灰尘、水分和其他污染物进入内部,从而保护电机的内部组件,延长其使用寿命。 环洋市场咨询机构出版的调研分析报告【全球封闭式电机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球封闭式电机总体规
    GIRtina 2025-01-06 11:10 104浏览
  • 每日可见的315MHz和433MHz遥控模块,你能分清楚吗?众所周知,一套遥控设备主要由发射部分和接收部分组成,发射器可以将控制者的控制按键经过编码,调制到射频信号上面,然后经天线发射出无线信号。而接收器是将天线接收到的无线信号进行解码,从而得到与控制按键相对应的信号,然后再去控制相应的设备工作。当前,常见的遥控设备主要分为红外遥控与无线电遥控两大类,其主要区别为所采用的载波频率及其应用场景不一致。红外遥控设备所采用的射频信号频率一般为38kHz,通常应用在电视、投影仪等设备中;而无线电遥控设备
    华普微HOPERF 2025-01-06 15:29 127浏览
  • By Toradex 秦海1). 简介嵌入式平台设备基于Yocto Linux 在开发后期量产前期,为了安全以及提高启动速度等考虑,希望将 ARM 处理器平台的 Debug Console 输出关闭,本文就基于 NXP i.MX8MP ARM 处理器平台来演示相关流程。 本文所示例的平台来自于 Toradex Verdin i.MX8MP 嵌入式平台。  2. 准备a). Verdin i.MX8MP ARM核心版配合Dahlia载板并
    hai.qin_651820742 2025-01-07 14:52 45浏览
  • 村田是目前全球量产硅电容的领先企业,其在2016年收购了法国IPDiA头部硅电容器公司,并于2023年6月宣布投资约100亿日元将硅电容产能提升两倍。以下内容主要来自村田官网信息整理,村田高密度硅电容器采用半导体MOS工艺开发,并使用3D结构来大幅增加电极表面,因此在给定的占位面积内增加了静电容量。村田的硅技术以嵌入非结晶基板的单片结构为基础(单层MIM和多层MIM—MIM是指金属 / 绝缘体/ 金属) 村田硅电容采用先进3D拓扑结构在100um内,使开发的有效静电容量面积相当于80个
    知白 2025-01-07 15:02 75浏览
  • 大模型的赋能是指利用大型机器学习模型(如深度学习模型)来增强或改进各种应用和服务。这种技术在许多领域都显示出了巨大的潜力,包括但不限于以下几个方面: 1. 企业服务:大模型可以用于构建智能客服系统、知识库问答系统等,提升企业的服务质量和运营效率。 2. 教育服务:在教育领域,大模型被应用于个性化学习、智能辅导、作业批改等,帮助教师减轻工作负担,提高教学质量。 3. 工业智能化:大模型有助于解决工业领域的复杂性和不确定性问题,尽管在认知能力方面尚未完全具备专家级的复杂决策能力。 4. 消费
    丙丁先生 2025-01-07 09:25 80浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦