im钱包下载后怎么找回|ethercat从站掉线
im钱包下载后怎么找回|ethercat从站掉线
EtherCAT有一个从站掉线:深入了解 - 技象科技
EtherCAT有一个从站掉线:深入了解 - 技象科技
跳至内容
技象科技有限公司官方网站
技象天猫旗舰店技象天猫旗舰店
技象京东旗舰店技象京东旗舰店
IoT演示平台IoT演示平台
首页
解决方案
菜单切换
TPUNB®
城域物联网
菜单切换
智慧农业
环境监测
智慧停车
局域物联网
菜单切换
智慧楼宇
智慧养老
智慧照明
智慧能源
工业智控物联网
菜单切换
动环监控
终端自组网
菜单切换
自组网
产品终端
菜单切换
芯片产品
模组产品
网关产品
应用产品
云平台
关于我们
菜单切换
荣誉资质
合作伙伴
公司一览
招聘岗位
新闻资讯
菜单切换
公司新闻
下载专区
联系我们
首页
TPUNB®
物联网解决方案
菜单切换
城域物联网
局域物联网
工业智控物联网
终端自组网
物联网产品终端
菜单切换
芯片产品
模组产品
网关产品
物联网云平台
关于我们
菜单切换
荣誉资质
合作伙伴
公司新闻
联系我们
Main Menu
首页
TPUNB®
物联网解决方案
菜单切换
城域物联网
局域物联网
工业智控物联网
终端自组网
物联网产品终端
菜单切换
芯片产品
模组产品
网关产品
物联网云平台
关于我们
菜单切换
荣誉资质
合作伙伴
公司新闻
联系我们
技象科技首页 / 行业百科 / EtherCAT有一个从站掉线:深入了解
EtherCAT有一个从站掉线:深入了解作者:
技象物联网
/ 行业百科 / 主站从站, 电子技术 / 2023年10月3日 10:51:51 2024年1月26日 16:31:17
EtherCAT(以太网控制器领域总线)是一种用于工业自动化的网络技术,它可以帮助您实现控制和检测系统的联网。它的一个重要功能是可以检测从站掉线,从而更好地保护您的系统免受损害。本文将介绍EtherCAT有一个从站掉线的原因,如何检测它们,以及如何避免它们发生。
什么是从站掉线?
从站掉线是指从站(也称为从属站)在EtherCAT网络中与主站(也称为控制站)失去连接。从站掉线可能会导致系统故障,因此检测和避免从站掉线是至关重要的。
从站掉线的原因
硬件故障
硬件故障是最常见的从站掉线原因。比如,电源故障、网络连接问题、电缆损坏等都可能导致从站掉线。当从站掉线时,它的状态会从“连接”变为“断开”,从而导致系统故障。
软件故障
软件故障也可能导致从站掉线。比如,从站的操作系统可能会崩溃,从而导致从站掉线。此外,从站的软件可能会受到恶意攻击,从而导致从站掉线。
网络问题
网络问题也可能导致从站掉线。比如,如果从站的网络连接不稳定,或者网络延迟过高,都可能导致从站掉线。
如何检测从站掉线?
使用状态检测
可以使用状态检测来检测从站掉线。EtherCAT系统提供了一种状态检测机制,可以检测从站的连接状态,并及时发出警报。
使用日志记录
可以使用日志记录来检测从站掉线。EtherCAT系统可以记录从站的连接状态,并将其记录在日志中,以便后期查看和分析。
使用监控系统
可以使用监控系统来检测从站掉线。通过监控系统,可以实时检测从站的连接状态,如果发现从站掉线,可以及时发出警报。
总结
EtherCAT有一个从站掉线是一个很常见的问题,它可能会导致系统故障。硬件故障、软件故障和网络问题都可能导致从站掉线。检测从站掉线可以使用状态检测、日志记录和监控系统。通过正确的检测和避免措施,可以有效地防止从站掉线,从而保护系统免受损害。
相关阅读:
ChemOffice三个起售:深入了解
MSP430PWM输出:深入了解
FCC认证频段:深入了解
C波段双输出高频头:深入了解
原创声明:文章来自技象科技,如欲转载,请注明本文链接: https://www.techphant.cn/blog/47292.html
文章导航
← 前一篇文章后一篇文章 →
相关推荐
1月 3 2024
不同种类的路由器
9月 30 20232023年9月30日 10:37:20
M8011是什么指令?
10月 29 2023
20小时十进制是多少?
10月 28 2023
MPO抗体423:一种可能的解决方案
1月 11 2024
探究信号带宽公式BW
10月 18 2023
TDD是什么网络
联系我们
广州技象科技有限公司聚焦物联网底层关键技术,打造100%自主知识产权的TPUNB物联专网,形成完备的物联感知系统参与各垂直行业的整体解决方案及项目建设。
品牌京东旗舰店
品牌天猫旗舰店
公司招聘岗位
免费技术咨询
站内资讯
单道批处理系统可以抢占吗
2023年12月31日 07:25:30
智慧停车传输原理是什么?
2023年6月21日 21:13:42
使用串口转网口后怎么通信
2023年9月16日 19:49:50
直接存取的存储设备
2024年1月9日 21:45:33
ModbusTcp主站和从站的区别
2023年6月27日 09:45:06
UART串口通信线长度限制
2023年9月27日 23:58:42
lora模块的作用
2023年11月27日 11:43:48
USB转TTL串口模块:让您的计算机更加灵活
2023年10月17日 08:58:34
串口扩展卡是什么
2023年9月14日 20:45:48
lora物联网系统架构
2023年8月30日 20:36:51
站内标签
物联网
STM32
Modbus
UART
zigbee
RS232
电子技术
无线模块
串口通信
智慧农业
通信系统
监测仪
CAN通信
LoRa
USB
DTU
无线通信
RS422
传感器
RS485
最新资讯
频域特征参数有哪些
路径损耗公式中,路径损耗随传输距离如何变化
无线电波的发射和接收过程
工业数据采集器的作用有哪些
广域网采用什么拓扑结构
芯片封装工艺流程
物联网通信技术有哪些应用场景
ISP芯片和SoC芯片有什么区别
产品服务
TPUNB®
城域物联网
局域物联网
工业智控物联网
终端自组网
芯片产品
模组产品
网关产品
技象科技成立于2018年,是中国电子科技集团公司科技成果转化和混合所有制改革的科技企业。
服务条款隐私政策关于我们联系我们
© 2024 广州技象科技有限公司 版权所有 粤ICP备19000791号-2
首页 | 隐私政策 | 关于我们 | 联系我们 | 网站地图
免费咨询组网方案
EtherCAT Technology Group | 常见问题
EtherCAT Technology Group | 常见问题
EN
|
DE
|
ES
|
IT
|
CN
|
JP
主页
新闻
市场活动
新闻发布
联系方式
会员专区
搜索
技术概览 协会组织 常见问题 会员相关 供应商ID 产品指南 资料下载 一致性测试 EtherCAT G EtherCAT P Safety over EtherCAT EtherCAT 和 TSN 技术汇编 开发者论坛 知识库
退出
EtherCAT 常见问题
1. EtherCAT技术
1.1 EtherCAT性能远高于我的应用需求。为什么我还要使用该技术?
1.2. 为何使用EtherCAT可以降低成本?
1.3 EtherCAT是否仅局限于主站与从站的通讯应用?
1.4 如何保证EtherCAT设备的兼容性?
1.5 EtherCAT使用主/从介质访问控制(MAC)方式。英文版术语变更。
2. EtherCAT 技术协会
2.1 我必须成为ETG会员才可以使用EtherCAT吗?
2.2 我必须成为ETG会员才可以实施EtherCAT吗?
2.3 如何成为EtherCAT技术协会的会员?
2.4. 会员可以享有何种利益?
2.5 为何ETG会员资格是免费的?
2.6 将来会否收取会费?
2.7 ETG会员如何影响该技术的发展?
2.8 EtherCAT技术协会的法律地位?
3. EtherCAT: 开放的技术
3.1 EtherCAT是一个开放性的技术。这意味着什么?
3.2 是否有专利权?
3.3 如何授权?
3.4 开放源代码是怎样的情况?
3.5 是否有多种渠道获取EtherCAT从站控制器?
4. 实施方面
4.1 我们想实施一个EtherCAT从站设备,应该如何开始?
4.2 我们想实施一个EtherCAT主站设备,应该怎么做呢?
4.3 EtherCAT从站控制芯片的授权如何?
4.4 FPGA的授权费用如何?
4.5 是否必须 将我们的EtherCAT设备递交给一致性测试中心接受检测吗?
5. EtherCAT Vendor ID
5.1 什么是EtherCAT Vendor ID?
5.2 我们的子公司/合作伙伴有EtherCAT Vendor ID。我们可以在我们的设备上使用它吗?
5.3 我们正在使用技术提供商提供的接口板在我们的设备上增加EtherCAT接口。那么。我们可以在我们的设备上使用该技术提供商的Vendor ID吗?
5.4 何谓二级Vendor ID?
5.5 我们有一个CANopen® 的Vendor ID。我们可以在EtherCAT设备上使用它吗?
5.6 我们如何申请Vendor ID?
6. Safety over EtherCAT
6.1 是否需要添加一个EtherCAT接口来连接我的FSoE设备?
6.2 是否需要为我的FSoE设备实施一个独立的控制器结构?
6.3 我是否可以在其他非EtherCAT通讯系统中使用Safety over EtherCAT?
6.4 是否有经过认证的Safety over EtherCAT堆栈可供使用?
6.5 是否有Safety over EtherCAT的一致性测试?
6.6 我的Safety over EtherCAT设备是否需要经过相关机构(如TUV, BGIA)的认可?
6.7 我是否需要在设备上市前在FSoE测试中心进行官方测试?
6.8 为何我在设备上实施Safety over EtherCAT协议需要授权?
6.9 我如何可以获得并使用Safety over EtherCAT的Logo?
6.10 我是一个EtherCAT主站的提供商。我如何支持Safety over EtherCAT设备?
6.11 我是机械设备制造商。我需要授权才可以使用Safety over EtherCAT的设备吗?
1. EtherCAT技术
1.1 EtherCAT性能远高于我的应用需求。为什么我还要使用该技术?
卓越的现场总线性能决不会有坏处。即使对于慢速控制,使用EtherCAT也可以改善响应时间并简化配置工作,因为缺省配置就可以满足要求。此外,更短的响应时间可以改善您应用的性能,因为这缩减了传输等待时间(如,在下一个处理被初始化前对输入信号的等待时间)。如果您对性能要求并不苛刻,也可以因为EtherCAT的其它优势而选用它,比如,成本更低,更加灵活的拓扑结构,或者仅仅是使用方便。总而言之,您采用EtherCAT,就无需采用昂贵慢速的系统了。
1.2. 为何使用EtherCAT可以降低成本?
有这样几种原因:低成本的从站控制器降低了从站设备的成本。无需任何特殊的主站卡,主板集成的以太网控制器即可满足要求。无需交换机或集线器,因此降低了基础设施的成本。使用标准以太网线缆。实施简单,因此降低了实施成本。支持自动配置,无需任何手动设置地址,无需任何网络调整,因此降低了配置成本。
1.3 EtherCAT是否仅局限于主站与从站的通讯应用?
不是的。与其他实时工业以太网系统一样,一个设备(主站)必须要担任网络管理、组织介质读取控制的任务。对于EtherCAT,有两种方式可以实现从站与从站的通讯:在同一个循环周期内基于拓扑结构,其中上游设备可以与下游设备交换数据,而独立于拓扑结构的情况需要在两个总线周期实现数据交换。EtherCAT比其他的协议更具有速度优势,即使需要两个周期实现从站与从站的通讯,相对来讲也是高速高效的。
1.4 如何保证EtherCAT设备的兼容性?
对于一个通讯技术来说,保证其实施的一致性及兼容性是该技术成功的重要因素。因此EtherCAT技术协会非常重视这些特性。技术实施协议方面的一致性是兼容性的前提,这意味着来自于不同厂商的设备可以在同一个应用网络中协同工作。为保证一致性,必须使用一致性测试工具(CTT)。此外,我们还有遍布全球的一致性测试中心(ETC)。对于通过EtherCAT一致性测试的设备,ETC将颁发官方一致性证书。更多关于一致性测试及设备认证的信息可以在一致性测试页面找到。
1.5 EtherCAT使用主/从介质访问控制(MAC)方式。英文版术语变更。
EtherCAT介质访问控制方式遵循主/从原则:只有主站设备发出帧,从站设备才能进行处理。为了避免部分用户和机构对术语的敏感和误解,ETG的英文版术语将使用MainDevice(主站设备,缩写为MDevice)和SubordinateDevice(从站设备,缩写为SubDevice)。因此,在(新)英文版文档中,我们将使用“MainDevice”或“MDevice”替代“Master”,使用“SubDevice”替代“Slave”,并将在缩写列表中显示术语MainDevice和SubordinateDevice。
FSoE术语:Safety over EtherCAT技术使用 FSoE主站和 FSoE从站的主从关系:状态转换由 FSoE主站发起,并由 FSoE从站确认。英文术语“ FSoE MainInstance”(缩写FSoE MInstance)替代 “‘FSoE Master”,“‘FSoE SubordinateInstance”(缩写FSoE SubInstance)替代 “FSoE Slave”。
2. EtherCAT 技术协会
2.1 我必须成为ETG会员才可以使用EtherCAT吗?
不需要。但是,您或许希望通过加入ETG来向您的客户或供应商展示您对该技术的支持。对于一个ETG会员,您将被邀请参加ETG会议,获取详细的技术规范及相关信息,并影响该技术的发展。
2.2 我必须成为ETG会员才可以实施EtherCAT吗?
虽然我们建议您加入ETG(见2.3/2.4),但如果您在您的机器或生产线上集成EtherCAT设备,那么我们认为您是最终用户,并不必须加入ETG。EtherCAT设备制造商必须要加入ETG,并获得一个EtherCAT Vendor ID。详情请在下载专区(请使用您的会员登录账号)下载EtherCAT Vendor ID政策(EtherCAT Vendor ID Policy)。会员资格免费获取(见2.5/2.6)。
2.3 如何成为EtherCAT技术协会的会员?
可以通过给ETG总部发邮件info@ethercat.org申请ETG的会员资格。您将得到所有必须的信息,如需求,会员申请表格等。在成为会员之前,请仔细阅读ETG By-Laws
2.4. 会员可以享有何种利益?
ETG会员优先享受技术支持,可获取仅提供给会员的EtherCAT规范、指南、免费从站代码和其他支持工具及相关信息。会员将被邀请参加ETG会议,如技术委员会(TC)或技术工作组(TWG),对规范进行审核和讨论。ETG会员有资格参加指定的EtherCAT培训和研发课程。此外,ETG会员还可以在EtherCAT官网上推广其产品,并作为合作伙伴参与我们的全球系列研讨会和全球重要展览会上的ETG联合展台。ETG会员权益
2.5 为何ETG会员资格是免费的?
会员年费或者其他的高额成本相对于获取一个开放的技术应该不是一个问题。因此,不仅没有ETG的会员费用,而且ETG会员获取协议堆栈,样本代码,评估套件,实施支持和其他的服务都是免费或者仅需很低的费用。
2.6 将来会否收取会费?
目前没有收取ETG会费的计划。如果将来需要收取会费(如,以支持ETG的外加服务),将由会员委员大会讨论通过决定。
2.7 ETG会员如何影响该技术的发展?
在ETG技术委员会会议上将对EtherCAT技术进行详细探讨,鼓励各ETG会员加入技术工作组和项目团队,并提出宝贵的建议和意见。 会员区有所有工作组的列表(需登录)ETG工作组欢迎各用户、OEM、系统集成商和设备制造商提供有价值的需求反馈,ETG的工作历史表明这种反馈非常有效。 技术使用者和开发者之间直接和个人的联系可以加强关于"Know-how"知识和技术信息的深层次交流。 查找ETG会员详细信息请点击这里: EtherCAT组织架构
2.8 EtherCAT技术协会的法律地位?
ETG是(类似于德国大多数工会或政党)受德国法律允许的非注册协会或社团组织。根据相关法规,由于ETG不销售任何产品,因此ETG是一个非盈利性组织。会员对协会资产共同承担有限责任——ETG无资产,因此事实负债为零。
3. EtherCAT: 开放的技术
3.1 EtherCAT是一个开放性的技术。这意味着什么?
这意味着每一个人都可以使用,实施,并获利于该技术。还意味着EtherCAT实施应该是兼容的,任何人不应为防止他人使用而改变这种技术。EtherCAT是国际标准(IEC61158, IEC 61784, IEC 61800, ISO 15745),同时也是SEMI标准(E54.20)。
3.2 是否有专利权?
是的,EtherCAT技术有专利权,如同其他任何值得拥有专利权的现场总线技术一样。 可以提供独特功能的技术需要专利权和授权以保护其不受复制和伪造的伤害。
3.3 如何授权?
对于EtherCAT主站实施的授权是免费的,但协议要求兼容性,以确保授权免费并提供法律效力。 对于从站设备,EtherCAT采用了CAN的授权模式(CAN是一个受专利保护的标准开放技术的出色样本): 低额的授权费用已经“嵌入到”EtherCAT 从站控制器(ESC)芯片中,因此ESC供应商需要一个许可,而设备制造商,最终用户,系统集成商,工具生产商等无需再付授权费用。
3.4 开放源代码是怎样的情况?
EtherCAT技术本身并不开源。 EtherCAT符合IEC,ISO和SEMI标准,因此每个人都可以平等地使用EtherCAT技术。 此外,无需缴纳主站使用授权费用。 ETG所有会员和EtherCAT用户组共同维护并促进EtherCAT技术的进一步发展。如果您有关于技术实施或者EtherCAT技术结合共享和开放源码系统方面的相关问题,请联系ETG总部或EtherCAT技术的专利方Beckhoff。
3.5 是否有多种渠道获取EtherCAT从站控制器?
有。EtherCAT从站控制器(ESC)实施可以从亚信电子、Beckhoff、Hilscher、HMS、英飞凌、Innovasic、Microchip、Profichip、德州仪器、Trinamics、瑞萨电子、Intel以及 Xilinx获取。更多实施也即将发布。EtherCAT从站控制器概述可在资料下载区进行查询:下载区
4. 实施方面
4.1 我们想实施一个EtherCAT从站设备,应该如何开始?
可以参考EtherCAT Slave Implementation Guide(EtherCAT从站实施指南)作为从站实施的开始,请点击这里下载。 该文件涵盖从站实施的起始步骤,包括开发硬件、软件、研讨会和培训、一致性,以及一步步的提示信息。 EtherCAT从站协议栈可以从多个供应商获取。 Beckhoff将从站协议栈代码(SSC)-源代码免费开放给所有ETG会员。 EtherCAT从站实施套件也可以从相关供应商获取。请在官方EtherCAT产品指南中查询更多从站评估套件: EtherCAT产品页面
4.2 我们想实施一个EtherCAT主站设备,应该怎么做呢?
对于主站来讲,你并不需要专用的硬件设备。任何以太网MAC都可以满足要求。EtherCAT对资源消耗非常小,因此也无需特殊的通讯处理器。主站代码可以从多种渠道获得,如一些通过样本代码包提供的免费开放代码,甚至一些包含了RTOS的主站产品。实施服务同样有不同的供应商可以提供。请点击此处了解EtherCAT产品情况。
4.3 EtherCAT从站控制芯片的授权如何?
当您从EtherCAT从站控制器供应商那里购买了ESC芯片,所有的EtherCAT功能已经包含在芯片中。对EtherCAT从站设备供应商来说,取得了ESC供应商资格则包含该授权,无需额外的EtherCAT授权费用。
4.4 FPGA的授权费用如何?
当您从您首选的半导体分销商那里购买了FPGA,EtherCAT代码尚未加载。EtherCAT IP核授权适用于Intel和Xilinx的FPGA。您只需支付一个授权即可制造尽可能多的EtherCAT从站设备。此外,也有基于数量的授权。
4.5 是否必须 将我们的EtherCAT设备递交给一致性测试中心接受检测吗?
不是。在官方EtherCAT测试中心进行一致性测试是可选的——但是,您的客户可能会需要一致性测试证书,而一致性测试证书只能通过官方测试后才能发放。您必须确保您的研发设施中应用了官方一致性测试工具(CTT)。每年,ETG都会维护和进一步发展CTT,CTT以订阅的方式提供。关于一致性的更多详情,请点击此处获得。
5. EtherCAT Vendor ID
5.1 什么是EtherCAT Vendor ID?
EtherCAT Vendor ID是由EtherCAT技术协会为每一个供应商分配的唯一的标识号码。它与产品编码(product code )一同将包含在EtherCAT设备的 标识对象中。EtherCAT Vendor ID 列表
5.2 我们的子公司/合作伙伴有EtherCAT Vendor ID。我们可以在我们的设备上使用它吗?
如果要求将Vendor ID授予合作伙伴公司,请联系ETG总部。但是,我们建议每个EtherCAT设备用户使用自己单独的Vendor ID。
5.3 我们正在使用技术提供商提供的接口板在我们的设备上增加EtherCAT接口。那么。我们可以在我们的设备上使用该技术提供商的Vendor ID吗?
不可以。该技术提供商的通信设备上附带有Vendor ID。您应使用自己独有的Vendor ID来替代它,以便于您的设备可以在网络中被识别。
5.4 何谓二级Vendor ID?
二级Vendor ID是从原Vendor ID派生出来的,专门用来标识通讯接口设备类产品的Vendor ID,但这类产品无法参加后续的一致性测试。
5.5 我们有一个CANopen® 的Vendor ID。我们可以在EtherCAT设备上使用它吗?
对于您的EtherCAT产品,你需要一个EtherCAT Vendor ID。然而,在您申请EtherCAT Vendor ID时,您可以提出申请与您CANopen® 的Vendor ID相同的号码,如果您申请的号码仍然可用,ETG则会分配给您。
5.6 我们如何申请Vendor ID?
非常简单,您仅需到EtherCAT网站的会员页面下载:EtherCAT Vendor ID 申请表格
6. Safety over EtherCAT
6.1 是否需要添加一个EtherCAT接口来连接我的FSoE设备?
不需要。RSoE协议采用一个黑色通道实现;无需为此设置安全相关的标准通讯接口。控制器,ASIC以及链接,耦合器相关的通讯接口都可以保留使用。
6.2 是否需要为我的FSoE设备实施一个独立的控制器结构?
使用两个微控制器是实现SIL 3安全设备的常用方式。但这并不是Safety over EtherCAT规范的要求。实现这个协议必须满足以下要求:- 完全符合IEC 61508和IEC 61784-3;- 完全符合FSoE协议规范;- 完全符合安全完整性等级(SIL)要求和相应产品的指定需求。
6.3 我是否可以在其他非EtherCAT通讯系统中使用Safety over EtherCAT?
可以。该协议可以在任何通讯中使用,可以是EtherCAT通讯,现场总线系统,以太网或类似的通讯,光纤,同轴线缆,甚至无线传输。对于通讯总线耦合器或其他设备没有限制或特别要求。
6.4 是否有经过认证的Safety over EtherCAT堆栈可供使用?
有,在ETG内部有服务提供商能够提供预先认证的FSoE协议栈和安全研发服务。Safety over EtherCAT协议非常简洁,协议状态机有明确的界定。经验表明,使用或不使用预认证的堆栈都可以在短时间内轻松实施。
6.5 是否有Safety over EtherCAT的一致性测试?
是的。FSoE测试案例规范适用于FSoE设备,并通过TÜV SÜD Rail批准。
对于FSoE从站,测试案例与EtherCAT测试工具配合使用,可以执行一个自动的测试。
通常情况下,由于灵活的主站配置,对于主站堆栈的自动检测更复杂。因此,可用的测试案例规范可以用于对主站的认可。
Safety over EtherCAT规则ETG.9100包括了对一个设备验收的完整测试流程。
6.6 我的Safety over EtherCAT设备是否需要经过相关机构(如TUV, BGIA)的认可?
是的。Safety over EtherCAT设备的研发需要评估。设备的实现包括通过EMC报告,Safety over EtherCAT一致性测试,并通过所有符合IEC 61508的安全周期流程。该评估将由机构实现。
6.7 我是否需要在设备上市前在FSoE测试中心进行官方测试?
是的。FSoE测试政策是需要通过官方FSoE测试中心测试的。进行FSoE一致性测试的前提是拥有有效的EtherCAT协议实施认证。FSoE测试中心的所有测试都可以在内部进行准备。
6.8 为何我在设备上实施Safety over EtherCAT协议需要授权?
Safety over EtherCAT是一种为很多设备制造商所采用的技术。对于这样一种技术来说,兼容性是保证在应用领域能进行互操作的重要功能。取得授权的设备制造商都有权实施这一技术,但其设备必须具有符合规范的兼容性。授权是免费的。
使用FSoE最终设备的机器制造商及控制系统提供商则无需该项授权。
6.9 我如何可以获得并使用Safety over EtherCAT的Logo?
Safety over EtherCAT的logo可以从ETG总部获取。使用Safety over EtherCAT Logo的产品必须遵循由ETG发布的ETG9001 EtherCAT标识规则。
6.10 我是一个EtherCAT主站的提供商。我如何支持Safety over EtherCAT设备?
如果您只是想在EtherCAT环节支持现有的Safety over EtherCAT设备,则无需在主站上进行任何安全相关的实施。可采用带一个EtherCAT从站接口的FSoE主站,同时也可以被用作安全逻辑设备。只有从-从通信必须由EtherCAT主站支持,将安全数据报从FSoE主站路由至FSoE从站,反之亦然。
6.11 我是机械设备制造商。我需要授权才可以使用Safety over EtherCAT的设备吗?
不。您可以在机械设备中直接使用最终的Safety over EtherCAT产品,而无需授权。您务必留意产品中是否有SIL或PL认证,产品必须执行相关标准(IEC 62061, ISO 13849)或产品标准,以及与其他相关标准的兼容性,如必须符合国际的或国家的法律要求(如Directive of machinery, OSHA, UL等)。
常见技术问题
更多技术常见问题请参见EtherCAT基础知识(仅英文)
EtherCAT Diagnostics 诊断 - 知乎
EtherCAT Diagnostics 诊断 - 知乎首发于深入浅出之Beckhoff切换模式写文章登录/注册EtherCAT Diagnostics 诊断噜啦啦学而时习之,不易悦乎一、EtherCAT 错误是怎么检测到的?EtherCAT 通常具有“即扫即用”的特性,扫描网络、启动系统,所有组件就运行起来了。绝大多数情况下不需要设置任何参数。发现EtherCAT网络的通讯问题,典型的情况是因为以下原因:机器停止工作,或者控制项目 (PLC 程序, NC 任务…) 接收到的数据值明显与实测值不一致。示波器测到信号为True,而PLC变量值为False.在TwinCAT项目中显示了错误(典型的情况是在Master Online页面或者TwinCAT Logger)二、EtherCAT 网络中的错误类型能影响到EtherCAT网络的错误分为2大类:1.硬件错误物理介质中断:数据帧无法达到所有从站,或者根本不能回到主站。信息破坏: 数据帧到达网络中的所有从站并回到了主站,但有一些内容改变了。2.软件错误启动时从站达不到OP状态,因为来自主站的一个或多个初始化的命令被检测到不正确由于在操作过程中检测到错误,一个正常工作的从站突然脱离OP状态EtherCAT 分别从硬件和软件层面提供了丰富的诊断信息, 诊断信息可以按下图归类:三、周期性同步诊断周期性同步诊断 – Working CounterWorking Counter 是和过程数据(Process Data)一起的周期性送回主站的唯一诊断信息,所以这是最早能被主站和用户程序检测到的报警标记。一个EtherCAT数据帧中的每个数据报文都以一个16位的Working Counter (WKC)结尾,WKC 每经过一个数据报文中指定的从站就会递增,递增的原则如下:Read-only 命令(xRD): 如果从站内存可读,则 WKC+1.Write-only 命令(xWR): 如果从站内存可写,则 WKC+1.Read+Write 命令(xRW): 如果从站内存可读 WKC+1,可写则 WKC+2 (i.e. 如果读写都成功则 WKC+3).1.主站检查返回的每个数据报文的WKC值返回主站的数据报文中的WKC 当前值 = 预期值 →WKC 有效,数据报文中的输入数据转发给控制程序(PLC, NC, …)每个总线周期主站都会验证 Working Counter.返回主站的数据报文中的WKC 当前值 ≠ 预期值 →WKC 无效,数据报文中的输入数据被丢弃 (PLC/NC 使用旧的数据)本页是WKC验证有效的情况验证的结果就在每个同步单元Sync Unit的从站的WcState信息中标记,验证成功则WcState为0,验证失败则WcState为1这就是为什么一个同步单元Sync Unit会共享同一个WcState标记,而任一从站读写不成功都会导致整个数据报文都无效。读写不成功的原因:从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因。在最新版的TwinCAT 3.1中,可以把单个从站(左图)或者全部网络从站(右图)配置为:主站把 无效的输入数据全部置 0 而不是废弃之。这个功能更加危险,如果开发人员考虑不周,可能性会引起程序误动作。慎用!2.Working Counter 相关信息:很少能检测到具体是哪个或者哪些从站没有成功处理数据报文(数据报文中指定地址的从站没能成功增加数据报文的WKC)。不会报告错误原因(从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因)。WKC与数据帧同步到达,主站以最快的速度作出故障响应,立即向控制程序或者用户提供一个故障标记位。WKC的有效标记位通常还需要与硬件或者软件诊断信息同时使用,这些诊断信息可以 由主站发送命令读取回来,并帮助定位故障位置和故障原因。Working Counter 的主要目的是立即检测出通讯错误, (i.e. 为了主站快速做出反应), 而不是为了精准分析通讯错误四、Working Counter 和 Sync Units(WKC和同步单元)1.SyncUnits(同步单元) 把从站分为不同的组,每个组使用不同的数据报文,所以每个同步单元具有独立的 WKC。对于伺服驱动器,为了精确定位故障点,可以把每个伺服都设置为独立的同步单元。对于IO模块,可能把一个耦合器及所带的IO模块,配置为一个同步单元。为了优化的目的,Sync Unit 的配置是一个可选的步骤。关于如何分配同步单元,并没有一个黄金法则,因为这是由项目决定的:通常来讲,工作时紧密相关的从站应该分配到同一个同步单 元,而功能相对独立的从站应该放到独立的同步单元。2.在 TwinCAT中指定 SyncUnitTwinCAT为不同的Sync Units(同步单元)创建独立的数据报文,每个报文拥有自己 Working Counter 计数器五、硬件诊断1.硬件状态速览主站的 Online 页面,提供了诊断网络硬件问题的最佳方法系统上电时候可能产生硬件错误,并在TwinCAT中累加,而通常这些错误并不代表有问题。所以,查找可能的硬件问题时,建议清除程序启后的所有错误计数,这样才能监视到运行过程中 发生的实际错误次数。2.初步检查 – 拓朴错误VPRS = Vendor ID, Product Code, Revision Number, Serial Number: 网络启动时主站扫描到的拓朴结构与TwinCAT 配置文件的朴拓结构不符。此类错误的原因,可能只是简单地插错网线。3.初步检查 – 接地和屏蔽发生硬件错误时,建议必须检查EtherCAT网络设备是否共用同一个接地(因为不同接地之间的 环流可能导致数据损坏)。关于EtherCAT网络安装的更完整、全面的描述信息,请参考ETG文档 ETG.160 “EtherCAT Installation Guidelines” ,可以从ETG官网www.ethercat.org.下载。4.初步检查 – EBUS 电流每个 EL 模块都会消耗若干 EBUS 电流,硬件故障发生时,建议必须检查每个I/O组的可用Ebus电流。根据经验,EBUS耗电量大的模块,比如网关模块EL6xxx,在保证其EBUS供电足够的前提下,建议散放在耗电量小的模块( 比如普通DI/DO模块)之间,所以尽量不要几个网关模块挨在一起,也不要紧挨着控制器或者耦合器放置。这是从散热的角度考虑。电流消耗达到限值时,应插入一个 EL94xx 模块。EL9100电源模块不仅可以接入负载电源,还有散热的作用,是最便宜的发热量最小并且能传递EBUS的模块。相同价格的还有EL9186/EL9187等电位分接模块。5.Emergency Scan(紧急扫描)Emergency Scan (紧急扫描)操作,可以发送预定数量的探测数据帧,用于快速测试物理连接 (TwinCAT 应处在 Config Mode):Emergency Scan 能够快速检查EtherCAT网络的永久硬件问题 (设备、电缆或者接头损坏)。用Emergency Scan的方法很难检测到随机的/不定时的干扰,处理这种干扰,应该进行完整的error counter analysis (错误计数分析)。6.EtherCAT 端口的硬件诊断为了进行更深入的分析,从站提供了基于端口的(port-specific)硬件错误计数。EtherCAT 定义了端口号 0 to 3 (端口 0 总是输入口),而TwinCAT 中通常把这些端口依次叫做A 到 D (A 总是输入口),两种端口定义方式是等效的:Master的Online页面,可以在线看到CRC校验错误计数。大部分从站是两个数字,耦合器EK1100有3个数字,而分支模块EK1122则会有4个数字。7.Link Lost (连接丢失)错误计数器有时候两个EtherCAT从站之间的物理连接可能会完全中断:信号完全无法到达相邻的从站。Link loss(连接丢失),最有可能的原因是:电缆或接头损坏(电缆连接),接触弹片不够力或者氧化( Ebus连接)。一个或者几个从站掉电。一个端口上的物理连接中断,从站就会把该端口的 Link Lost Counter(连接丢失计数器) 加 1。Register 内存地址长度含 义0x03101 字节port 0 的连接丢失次数0x03111 字节port 1 的连接丢失次数0x03121 字节port 2 的连接丢失次数0x03131 字节port 3 的连接丢失次数物理连接的状态发生久性或暂时性的改变,在TwinCATLogger消息区中都会报告(并且保存在Windows Log 中)。8.Link/Activity (连接/活动)指示灯连接的永久中断很容易检查出来,不用分析连接丢失计数器( Link Lost Counters ),只需要简单查看主站的Online页面:9.无效帧(Invalid frame)错误计数器有时候,即使硬件信号到达了相邻的从站,接收到的信号却与最初发送的不一致:数据包发生损坏,最有可能的原因是:如果该错误计数零星增加,极可能是由于外部 EMC 干扰。如果该错误计数快速且稳步增加,极可能是由于设备损坏。一个端口上的数据帧破坏,从站就会把该端口的 InvalidFrameCounter(无效帧计数器)加 1。RX 错误计数器 和 CRC 校验错误计数器,都意味着硬件接收到的数据帧损坏,表征信息非常相近,但是二者分别是在从站架构的不同层面检测到的,其含义也略有不同。10.物理介质上的信号传输0和1的逻辑序列要在物理介质上传输,需要编码成预定义的电压/电流 电平(或者电平转换)。电流/电压 值的序列叫做 symbols(符号).基于特定的硬件编码标准,电流/电压值的可能序列并不是全都具有含义,这样就有了 有效符号和无效符号的分别。物理介质上符号是连续传输的,既在Ethernet数据帧内也在数据帧外(数据帧外的符号序列是为了让接收方及时检测到可能发生的连接丢失错误)通讯由符号序列组成携带着有含义的信息的符号序列,就是Ethernet 数据帧。两个Ethernet数据帧之间传输的符号序列,就是 数据帧间隔硬件错误分为两种类型,都在无效帧计数器中累计。RX Errors:个别符号错误 (被特定的硬件解码器识别为无效).在数据帧内部或者外部都可能发生(即使是在没有数据帧传输的时候,每个物理接口都会传输 idle 即表示空闲的符号)→ RX Error Counters (无效帧计数器的高字节)CRC Errors:整个数据帧的循环冗余校验(CRC)错误.在数据帧内发生 (只有Ethernet 数据帧才进行校验).→ CRC Error Counters (无效帧计数器的低字节)11.RX 和 CRC 错误的类比硬件通讯介质上的数据传输可以用标准的语言书写来打个比方:RX 和 CRC 错误 在解释上具有细微的差别,例如:CRC校验只检查数据帧(Frame)内语义是否正常,但并不能发现网络帧间隔的非法字符。RX校验所有字符是否非法。CRC 错误 – 什么情况下会检测出来?12.链接丢失(Lost Link)错误的简单监视在EtherCAT主站的Online页面可以监视到链接丢失(Link Lost)只要在主站的Advanced Setting中启用累加计数“Show Change Counters”即可:添加这些操作是不需要重启TwinCAT软件的此计数表示与从站的物理连接丢失的次数(1表示首次连接,>1表示在运行期间至少出现过1次 物理连接丢失)。在EtherCAT主站的Online页面可以监视到数据帧错误(Frame error)即从站的RX Error计数寄存器的低字节,错误计数如下:从站的Frame Error计数器中保存着自TwinCAT启动以来的累计出错次数,点击“Clear CRC”所有从站的CRC计数清零,并重新累计。13.怎样正确跟踪硬件错误计数为了追踪硬件错误计数,建议进行以下设置:在主站的Advanced Setting中 不要勾选 “Log CRC Counters” 标记。在Online视图中添加注册字 0x0300÷0x030A 和 0x0310÷0x0312。激活并重启 TwinCAT 配置:重启TwinCAT后,清空所有错误计数:TwinCAT 中,EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值。等待,直到错误补检测到:捕捉到的错误次数越多越好 (关闭项目或者重启TwinCAT就会清除计数,而最小化项目或者切换窗口则不会清除计数). 记录的值可以导出,以供进一步分析。错误计数采集完成后,记得应把 “Log CRC Counters” 重新勾选上。(TwinCAT 需要重启).14.怎样定位一个错误?为了从显示的CRC错误计数分析出网络中的故障点分布情况,建议:逻辑上沿着网络数据帧传播的方向确定从站端口执行CRC校验的顺序(根据 前述信息 previous information):根据前面确定的顺序检测第一个报告RX Error Counter >0 的端口:在网络中定位第一个报告RX Error的故障点:报告无效错误计数器不为零的第一个端口 → 极有可能就是故障点。15.在故障点采取什么措施?在上页定位到故障点 previously located 后,应进行以下操作 :检查与上个从站之间的连接电缆:EtherCAT网线的走向是否靠近电源线或者干扰源?是否自制电缆的接头做工很差?电缆的屏蔽层是否接地良好?检查故障点的站和前一个从站:是否供电不足 (供给本站的电流太小, 例如:EBUS 电流)?两个从站的接地点不是等电位?试着替换该从站和前一个从站,或者交换二者的顺序,以查看错误是跟随某个从站还 是出现在原先的位置。对于 EMC 干扰, 应该会导致 RX 和 CRC 错误都有增加 (即使二者增加的机率可能不同), 因为外部干扰不可能与通讯同步,于是在Ethernet 数据帧内部和外部都会破坏数据。完全不平衡的计数值 (RX错误很多,而没有CRC错误,或者很CRC错误而没有RX错误)可能意味着其中一个从站的内部硬件错误。16.深入了解 - CRC 错误的转发机制部分从站还额外支持 转发CRC错误计数器(Forwarded CRC Error Counters): 第1个检查出CRC错误的从站,其CRC 错误计数器(Register 0x0300)增加,第2个及之后再检查出CRC错误的从站则增加其转发CRC错误计数器(Register 0x0308)而CRC 错误计数器保持不变。并非所有从站都支持 转发CRC错误计数器(Forwarded CRC Error Counters) 功能 (该特性为可选项) ,所以该计数应视为补充信息: 有助于定位出错的第1个设备,但不是关键指标。17.深入了解 – 转发CRC错误的计数器TwinCAT 中, EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值,所以转发CRC错误计数器( Forwarded CRC Error Counter )的说明如下:18.主站错误计数此外,EtherCAT 主站 也提供硬件错误 计数:EtherCAT 主站支持两种不同的错误计数器 :Rx Errors: 与从站侧的 RX 错误计数器类似,由网卡统计符号错误的次数 (发生在数据帧内和数据帧外的错误).Lost 数据帧: 由于EtherCAT闭环在某处中断未能返回主站的数据帧和返回了但CRC校验错误的数据帧 TwinCAT 都视作丢失的“lost“。在TwinCAT中,如果丢失一个数据帧,则该数据帧包含的所有数据报文(Datagram,即Sync Unit同步单元)都会报Working Counter 错误,显示为所有从站的WcState为Invalid。分别考虑不同的数据帧类型:Cyclic: 周期性数据帧 发送要交换的过程数据( Process Data):Queued: 排队等候的数据帧,包括所有非周期性的数据帧: 邮箱 Mailbox, 状态机 State Machine, 注册字访问 Register access19.在线查看拓扑结构大部分硬件诊断信息,可以在 Topology View 界面监视Topology View 是个 ActiveX 插件,可以导出到任何独立于TwinCAT 开发环境的 Windows 应用。六、Software Diagnostics 软件诊断1.软件层面的错误 – EtherCAT 状态机软件层面的诊断信息,通常与EtherCAT 状态机操作有关: 一旦从站不能按主站要求进入正确的状态, 就会在从站的注册字(Register 0x0134)中报告AL状态代码(AL Status Code)。在 TwinCAT Logger 中也会显示状态机错误:TwinCAT 默认总是试图清除状态机错误,并且把所有从站切回OP状态。此时, 要在主站的Advanced Settings中取消选中该标记。2.状态机切换异常( Unexpected State Transitions )的简单监视在EtherCAT主站的Online页面可以监视从站状态机异常切换的次数,只要在主站的Advanced Setting中启用该计数即可显示:此计数表示与从站的状态机切换异常的次数(1表示首次切换,>1表示在运行期间至少出现过1 次状态切换异常)。3.EtherCAT 状态机错误的类型EtherCAT 状态机错误可以归为2个大类:初始化错误 (启动时从站不能进入OP状态): 状态机切换过程中,主站根据 ESI 文件的内容向从站发送初始化命令. 如果从站检测到一个或者几个 start-up 参数无效,就会拒绝相应的状态机切换。典型 的初始化错误:此时 Register 0x0134 的值显示为:0x0003 : Invalid Device Setup (BK1xxx上配置的KL模块顺序不正确)0x001D : Invalid Output Configuration (配置的输出过程数据无效)0x001E : Invalid Input Configuration (配置的输入过程数据无效)0x0035 : Invalid Sync Cycle Time (在 DC 模式中设置的Cycle Time不支持)运行时错误 (从站退出OP到更低级的状态): 配置正确的从站成功进入OP状态以后,在运行过程中检测到错误,并因此执行切换到更低级的状态。典型的运行时错误:此时 Register 0x0134 的值显示为:0x001A : Synchronization error (网络的抖动导致从站的同步丢失)0x001B : Sync manager watchdog (从站未接收到周期性数据的时间,持续超过了watchdog时间)0x002C : Fatal SYNC error (ESC 再未收到 SYNC 硬件中断)4.发生初始化错误 – 怎么办?从站的 ESI 文件应包含TwinCAT在网络中正确配置该从站所需要的全部信息。如果使用从ESI读取的默认设置来激活配置 (而不做任何手动修改), 从站应该能进入OP状态而不报错。如果发生了初始化错误:确保 ESI 文件复制到了 包含所有从站描述文件的TwinCAT统一路径(ESI 文件中的ProductCode 和 Revision Number 与CoE对象 0x1018 中显示的信息相匹配)。检查从站的默认设置是否改动过,如果改过就删除该从站再在TwinCAT配置中手动添加。(以恢复默认设置)对模块化的从站(For modular slaves) ,检查“Slots” 页面配置的模块与实际连接的模块在型号、数量、顺序上是否严格一致。对具有分布时钟同步功能的从站设备(For DC-Synchronous devices),检查主站的Jitter或者Sync Shift Time的设置是否会妨碍从站正确实现DC同步。如果是这种情况 ,只是检查并不能解决问题,必须联系从站的制造商。5.发生运行时错误 – 怎么办?从站成功进入OP状态以后,在运行时不会无故退出OP状态。如果发生了运行时错误:如果从站发生了 watchdog 错误,检查TwinCAT 软件任务 (PLC 程序, NC 任务, …)是否正确运行,因为在TwinCAT中总是由上述任务触发数据帧的周期性发送和接收。检查主站设备的Jitter表现(抖动范围)是否能证明发生了同步丢失。(最大的Jitter超过通讯周期的20-30%时,很容易发生同步错误)。检查是否发生了硬件错误,比如物理连接丢失,这种错误可能间接导致Watchdog动作,或 者同步丢失 ( 参考“物理层问题的硬件诊断 ”)。如果是这种情况 ,只是检查并不能解决问题,使用 Wireshark 进行追踪会是个有用的办法。6.保存和导出软件错误状态机错误保存在 Windows Log 中,可以导出,以便在即使TwinCAT Logger已经关闭或者不可用的时候,还可以进一步分析:7.历史诊断信息(Diagnose History Object)对于所有应用相关的错误,部分 CoE从站设备支持“历史诊断信息”功能 (Diagnosis History Object ) Register 0x10F3.如果从站支持该功能,TwinCAT 就会额外显示一个页面 “Diag History” :8.邮箱协议错误(Mailbox Protocol Errors)邮箱协议错误( Mailbox protocol errors )是一个指定类的一般性软件错误,它不是厂家自定义的,不影响 EtherCAT 状态机,不会阻止也不会导致意外的状态切换。仅当执行某个特定的邮箱协议所禁止的动作时,才会发生邮箱协议错误。在 ETG.1000.6 规范中,公布了每个邮箱协议支持的错误代码及描述信息。9.发生了邮箱协议错误(Mailbox Protocol Errors )– 怎么办?根据特定的邮箱协议,可能的错误原因是:•CoE-主站试图读写从站的对象字典(Object Dictionary)中并不存在的对象-主站试图对从站的某个“只读” 对象执行“写入”操作。-主站试图以“完全访问”的方式访问从站的某个对象,而从站并不支持该功能。•FoE-文件名错误 (例如, 缺少扩展名*.xxx).-从站需要密码, 但未被正确设置-文件大小超出了从站能接受的范围-从站不在 Bootstrap 状态•EoE-主站试图把从站的 IP-Add(Internal Use)ress 配置为末位为0的值(比如“x.y.z.0”),而EoE从站的Tcp/Ip 协议栈拒绝此设置。注意:•TwinCAT 仅在以下时段 读/写 CoE 参数: -在初始化阶段(Startup 命令) -CoE-Online 页面打开时•如果错误信息显示TwinCAT试图间歇性地读写CoE参数,很可能这是PLC程序的动作。七、TwinCAT PLC 中编写EtherCAT 诊断程序1.在PLC程序中系统地诊断 EtherCAT 状态对于EtherCAT 网络, TwinCAT 自动提供了大量诊断信息,可以在PLC程序中用于检测总线通讯的错误, 以便自动做出响应并报告给用户。用户总是倾向于在PLC程序中实现最少的EtherCAT诊断,因为这样有助于通讯错误发生时节约大量的操作时间。TwinCAT PLC 程序可以混合使用 2 种不同的诊断信息 :周期性信息 : 默认包含在EtherCAT网络的周期性过程映像数据中的 输入数据, 可以直接映射到相应的PLC输入变量 (AT %I*).非周期性信息 : PLC程序调用默认库文件(TcEtherCAT.lib)中指定的功能块,可以获取这些非周期性的EtherCAT诊断信息 。2.TwinCAT 中的周期性诊断信息注意:至少所有从站的 WcState 和 State 变量应链接到 PLC 程序,以便应用程序可以对 EtherCAT 进行最基本的诊断。3.周期性信息 - FrmXWcState 变量允许 PLC 检查每个报文的 Working Counter 信息:每个配置的Frame都具有一个16位的诊断变量 FrmXWcStateFrmXWcState 的每个位对应Frame中的特定报文如果对应报文的Working Counter错误,这个位就会变为TRUE4.周期性信息 - WcState 变量这是每个从站的过程数据中都具有一个布尔型变量如果报文的Working Counter 错误,报文中所有从站的WcState 变量都会被置位,所以,如果一个从站的 WcState = 1, 也并不表示它本身发生了错误。 (内部使用) 进一步的信息需要查看这些 WcState 为 1 的从站的16位状态变量 State5.周期性信息 - State 变量EtherCAT Master汇总从网络收集的诊断信息,周期性地更新State变量,对应几种错误情况:6.周期性信息 – State 变量状态变量报告的错误诊断信息如下:7.非周期性信息 – TcEtherCAT PLC Library在TC2和TC3的默认安装中都免费提供TcEtherCAT.lib库, 该库包含若干功能块,可以对EtherCAT网络进行非周期 性诊断Frame 分析CRC 分析从站识别配置从站的数量和列表实际从站的数量和列表该库原则上允许PLC程序自动读取在TwinCAT开发环境中 在线显示的所有信息。功能块FB_EcGetSlaveTopologyInfo功能块FB_EcGetSlaveTopologyInfo返回关于不同从站的端口如何相互连接的信息,以及(配置的)网络拓扑结 构的信息,(如果配置了热连接组,则它们将列在阵列的末尾)。功能块FB_EcGetConfSlaves功能块 TwinCAT 离线配置,知道 EtherCAT 网络包含哪些从站。功能块 FB_ecgetscannedsaves功能块 FB_ecgetscannedsaves 使 PLC 可 以 获 取EtherCAT网络在线检测的实际从站信息,以便和使用FB_EcGetConfSlaves 获得的离线配置的从站信息进行比较。功能块 FB_ecgetscannedsaves功能块FB_ecgetallslavercerrors可以周期性调用,以判断一个或多个从站是否报告CRC错误。这样就可以只对 这些出错的从站调用FB_ecgetslavecercerrorex,以获取进一步的故障信息。功能块FB_ecgetslavecercerrorex功能块 FB_ecgetslavecercerrorex 使 PLC 可 以 获 取EtherCAT主站记录的特定从站的CRC错误信息,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcMasterFrameStatistics功能块 FB_EcMasterFrameStatistics 使PLC可以获取EtherCAT主站检测到的Frame丢失等情况,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcGetAllSlaveAbnormalStateChanges功能块FB_EcGetAllSlaveAbnormalStateChanges,统计每个从站 从 OP 退至 SafeOP 的异常状态切换,但并不报告每次异常切换时相关的特定AL 状态码。功能块FB_EcGetLastProtErrInfo功能块 FB_EcGetLastProtErrInfo 允许覆盖上一次邮箱协议错误 Mailbox protocol error (例如, CoE协议的SDO退出代码).对同一从站的下一次正确邮箱访问会清除此前记录错误信息的内存区。八、附件:使用 Wireshark 进行诊断1.如果软件诊断还不够 – 使用 WiresharkWireshark 并不是用以取代TwinCAT中的诊断功能 。对于用户来说,应当在使用了其它诊断方法都无法找到故障点的时候,才使用这个“终极武器”。使用ET2000 可以在Wireshark中获得最好的捕捉效果为了执行 Wireshark 抓包,有多种不同的硬件配置。2.Wireshark 抓包的硬件配置 1不支持 Windows CE没有精确的时间戳3.Wireshark 抓包的硬件配置 2不支持 Windows CE有精确的时间戳4.Wireshark 抓包的硬件配置 3支持 Windows CE有精确的时间戳5.Wireshark 示例Wireshark 允许追踪每个 EtherCAT 数据帧的 list, structure and content of (在一轮捕捉过程中,每个数据帧会被捕获两次!).下图显示了捕获的一个周期性数据帧:6.Wireshark – 时间戳协议( 仅当使用ET2000时 )使用ET2000时,为了在Wireshark中获取到极为精确的时间戳(time-stamping)信息, 应当启用对ESL协议的解析功能。Wireshark Version 2 支持此功能。7.Wireshark – 时间戳协议( 仅当使用ET2000时 )…在早期的 Wireshark Version 1中操作如下:8.Wireshark – 显示时间的格式使用Wireshark追踪时,用户可以选择最合适的 时间信息 显示格式:9.Wireshark – 部分过滤选项(Filter Options)捕获的数据帧可以使用过滤功能,可用的过滤选项包括:仅捕获周期性数据帧(Cyclic Frame)Filter: (ecat.cmd == 0x0a) || (ecat.cmd == 0x0b) || (ecat.cmd == 0x0c)仅捕获邮箱通讯(mailbox communication)Filter: ecat_mailbox Filter: ecat_mailbox.coe Filter: ecat_mailbox.soe Filter: ecat_mailbox.foe Filter: ecat_mailbox.eoe仅访问特定的注册字或者注册字区间 (register or register range)Filter: ecat.ado == 【EtherCAT】4.实现一个成熟的从站 - 知乎首发于EtherCAT切换模式写文章登录/注册【EtherCAT】4.实现一个成熟的从站小皎皎一只可爱的小皎皎学习EtherCAT最好从从站开始,因为从站包含了EtherCAT大量原理,例如状态机,PDO映射等。学习从站代码有利于理解过程数据如何传输,XML有什么作用。本文介绍一些从站的基础知识,以及如何设计一个功能完善的从站。从站硬件无论是以ASIC还是FPGA的形式,ESC都是从站的核心,主站通过读写ESC的DPRAM空间实现数据传输。ESC通过PDI接口将数据发送到MCU,在MCU中执行实际的应用层操作。ESC根据倍福公司的IP core设计,目前主流的ESC芯片包括: ASIX公司的AX58100芯片;BeckHoff自己的ET1100芯片;Microchip的LAN9252芯片;FPGA:ET1810(altera)和ET181(xilinx);由于都是基于BeckHoff的IP core设计的,因此这几个芯片在实际功能上差距并不大,区别在于DPRAM的大小,SM的数量,FMMU的数量,PDI的方式等。芯片网口FMMUSMRAM(kBYTE)数字IOSPI slaveLocal BUSAX581002内部PHY,1MII88932Y8/16 asyncLan92522内部PHY,1MII34432Y8/16 sync/asyncET11004EBUS/MII88816Y8/16 sync/async关于芯片的详细参数,可以访问ESC具有各类AL寄存器供主站访问,但实际不执行具体的应用层操作,从站应用层的管理由专门的MCU进行。stm32有强大的性能和完善的生态,因而是应用层使用最为广泛的芯片,也可以采用其他的硬件例如Arduino或者ESP32实现应用层逻辑,但是要支持对应ESC的相关PDI接口。一般来说,从站硬件系统如下图所示:从站最小系统从站软件从站帧的链路层功能都是由ESC完成的。从站软件运行在MCU中,主要执行的是应用层的操作。MCU通过PDI接口读取ESC中的PDO和SDO数据,然后执行应用层的处理,例如状态机,COE,EOE等相关逻辑。MCU需要一套协议栈执行相关的逻辑,目前使用最多的从站协议栈是EtherCAT技术组(EtherCAT Technology Group,ETG)为会员提供的Slave Stack Code(SSC),SSC支持几乎所有应用层协议栈(EOE,COE,FOE)等,同时还提供了对专有协议Cia402等的支持。除此之外,SSC还提供了专门的工具来配置协议栈和PDO。SSC的缺点是,它是针对BeckHoff自己的PIC和ET1100芯片写的,如果使用stm32或者其他通用处理器,需要手工移植代码。ssc的代码框架除了SSC之外,另一个比较有名的EtherCAT开源协议栈是SOES(GitHub - OpenEtherCATsociety/SOES: Simple Open Source EtherCAT Slave),SOES支持EOE和COE这两种较为常用的应用层协议,同时支持静态和动态的PDO映射。SOES的代码相较于SSC精简很多,代码可移植性较好。商用从站协议栈中,比较具有代表性的是KPA协议栈(https://koenig-pa.de/products/ethercat/kpa-ethercat-slave-stack)。作为商用协议栈,KPA协议栈几乎支持所有的EtherCAT特性,包括: 邮箱协议:COE,EOE,FOE,SOE,VOE 分布时钟DC;不同的扫描速率;从可移植性的角度,KPA协议栈实现了一个硬件抽象层,支持不同ESC和主控芯片的数据交互。下图是KPA协议栈的程序结构,从图中可以看出,数据从DPI传输到MCU后,首先通过的是硬件抽象层,主循环轮询AL事件来获取过程数据和邮箱数据的更新,然后基于对象字典更新PDO和SDO。从站功能操作系统层对于实时性和同步要求极高的场合,一般一个系统运行一个从站任务就好了,例如电机驱动从站,此时不建议使用操作系统,直接进行SSC协议栈移植即可。但是实时要求不强的场合,每个任务/接口使用一个从站是很浪费的,毕竟ESC还是有点小贵的,对于任务很多的从站,还是有必要上嵌入式实时系统。下面介绍一下嵌入式操作系统的作用。操作系统层的主要作用是合理对从站任务进行调度。作为现场总线的一部分,一个EtherCAT从站一般至少包含两个任务,一个从主站获取EtherCAT数据,另一个与控制设备(比如电机或CAN总线)交互。在多任务环境下,为了确保EtherCAT通信的实时性、增强任务调度的合理性、有效利用系统资源,从站应当基于实时操作系统进行开发。相较于Linux等操作系统,嵌入式操作系统具有如下特点:小型系统:由于嵌入式设备功能明确,操作系统往往与应用程序编译在一起运行。实时性:嵌入式操作系统往往是实时操作系统。很多嵌入式设备对处理的实时性有严格要求,这种实时性是通过操作系统层面的任务调度机制、任务优先级的设定和应用程序的快速处理来达到的。可移植性:由于嵌入式设备的应用场景多样,复杂程度千差万别,应用程序的大小各不相同,移植的需求是频繁发生的。ucos,vxworks,FreeRTOS和RT-thread是较具代表性的实时操作系统。这里以RT-thread为例介绍嵌入式实时系统的组成,RT-thread不仅是一个实时操作系统,也是一个完善的嵌入式软件生态。它的底层是RT-thread内核,基于内核还提供了网络框架,设备框架,以及各类API。最后在应用层还提供了各类具体应用。RT-thread架构线程管理 RT-thread内核是一个RT-thread程序的核心,RT-thread内核是一个基于优先级的全抢占式多线程调度系统,在该实时系统中,线程是最小的调度单位,系统中除了中断处理函数、调度器上锁部分的代码和禁止中断的代码是不可抢占的之外,系统的其他部分都是可以抢占的,包括线程调度器自身。RT-thread的线程调度关系如下。在RT-thread 中,实际上线程并不存在运行状态,就绪状态和运行状态是等同的。RT-thread线程RT-thread最多支持256个线程优先级,0优先级代表最高优先级,最低优先级留给空闲线程使用。同时它也支持创建多个具有相同优先级的线程,相同优先级的线程间采用时间片轮转调度算法进行调度,使每个线程运行相应时间。线程间通信 RT-thread支持线程间的同步和通信。采用信号量、互斥量与事件集实现线程间同步,线程通过对信号量、互斥量的获取与释放进行同步。支持邮箱和消息队列等通信机制。邮箱和消息队列的发送动作可安全用于中断服务例程中。通信机制支持线程按优先级等待或按先进先出方式获取。时钟管理 任何操作系统都需要提供一个时钟节拍,以供系统处理所有和时间有关的事件,如线程的延时、线程的时间片轮转调度以及定时器超时等。时钟节拍是特定的周期性中断,中断之间的时间间隔取决于不同的应用,时钟节拍率越快,系统的额外开销就越大,从系统启动开始计数的时钟节拍数称为系统时间。RT-Thread 的时钟管理以时钟节拍为基础,时钟节拍是 RT-Thread 操作系统中最小的时钟单位。RT-Thread 的定时器提供两类定时器机制: 单次触发定时器:这类定时器在启动后只会触发一次定时器事件,然后定时器自动停止。 周期触发定时器:这类定时器会周期性的触发定时器事件,直到用户手动的停止定时器否则将永远持续执行下去。通常使用定时器定时 回调函数(即超时函数),完成定时服务。用户根据自己对定时处理的实时性要求选择合适类型的定时器。内存管理 内存是系统的重要资源,特别是对于资源紧张的嵌入式设备来说。RT-Thread将内存分为动态内存堆和静态内存池,对于动态内存的申请,RT-Thread提供小内存分配算法,slab算法和memheap算法。为了避免内存碎片,提高分配效率,RT-Thread还在.data段提供一个静态的内存池。设备管理 和Linux驱动框架类似,RT-Thread也通过I/O设备模型框架对外设进行管理。I/O 设备管理层实现了对设备驱动程序的封装。应用程序通过 I/O 设备管理接口获得正确的设备驱动,然后通过这个设备驱动与底层 I/O 硬件设备进行数据交互。设备驱动程序的升级、更替不会对上层应用产生影响。这种方式使得设备的硬件操作相关的代码能够独立于应用程序而存在,双方只需关注各自的功能实现,从而降低了代码的耦合性、复杂性,提高了系统的可靠性。硬件抽象层硬件抽象层的主要作用是提升程序的可移植性。与ESC的数据交互,是EtherCAT从站MCU最为重要的功能。MCU通过PDI访问ESC的内存空间,读取寄存器和过程数据,因此,有必要对ESC的数据访问进行封装,封装的目的是保证在MCU应用层能够通过通用的接口实现对不同类型从站ESC,不同接口PDI的访问。关于硬件抽象层的封装,SOES实现了所有硬件访问相关函数:应用层协议EtherCAT从站的目标是能够支持各类应用层协议,这其中最主要的是COE协议和基于COE的各类行规。此外还需要支持FOE,EOE,SOE等协议。COE:CANopen over EtherCAT,EtherCAT协议在应用层支持CANopen协议,并作了相应的扩充,CoE协议完全遵从CANopen协议。COE协议十分核心且复杂,在此不作过多介绍。EOE:EtherNet over EtherCAT,该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。SOE:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。SERCOS应用层协议为主站设计了信息接口,可以通过配置EtherCAT过程数据报文,实现周期性传递伺服驱动器的数据。FOE:File Access over EtherCAT。该协议可以使用EtherCAT总线上传、下载固件,刷新从站的固件。并且可以通过命令行工具加载或存储文件。结合实际需求,COE和基于COE的行规协议CiA402等是必须实现的,FOE、EOE作为程序的扩展功能有必要实现,而SOE不是常用需求。动态PDO映射静态PDO映射是将PDO变量“写死”在从站中,对于实际应用场景是十分不友好的,例如某个机型的电机需要实时传输电机温度,但在另一个机型中不需要温度信息,如果使用静态PDO映射,为了提升传输效率,删除温度PDO,则需要修改代码,烧写固件,更新XML文件。这样会带来巨大的工作量。特别是基于CiA402的驱动器来说,经常要根据上位机软件的需求修改传输变量。动态PDO映射允许定制PDO以满足客户需求,TwinCAT和KPA studio等上位机软件都支持以勾选的形式动态配置PDO。为了使得上位机能够修改PDO assign,需要在xml中配置mandatory为false(SSC在EXCEL)中可以配置。动态PDO映射的基本原理是操作对象字典的0x1C12和0x1C13对象,这两个对象分别管理输出和输入的PDO映射。过程如下:将Ethercat状态机切换到PreOP状态,此状态可以用SDO来配置PDO映射;清除PDO指定对象的PDO映射对象,即设置0x1C12-00,与0x1C13-00为0;PDO映射对象无效,即对0x1600-0x1603/0x1A00-0x1A01的子索引设置为0;重新配置PDO映射内容;0x1600-01开始的是RxPDO内容,0x1A00-01开始的是TxPDO;设置PDO映射对象总数;写有效的PDO映射对象索引到PDO指定对象设置PDO指定对象的总个数,即将映射对象个数写入到1C12-00h和1C13-00h转换Ethercat状态机到安全操作以上,配置的PDO映射将有效。分布时钟EtherCAT各个从站得到帧后会进行处理或者转发,这需要一定的微小时间。但当需要经手的从站多,或者数据量大的时候,积少成多会导致较大的延迟,并且电缆线内信号传输也占有一定的延时时间。分步时钟可以使所有的EtherCAT设备使用相同的系统时间,从而控制各设备的任务的同步执行,支持分布式时钟的从站称为DC从站。为使各个从站的参考时钟达到绝对同步,主站会计算各个从站的偏移时间,这个值会写入对应从站的系统时间偏移寄存器。在从站端,分布时钟由ESC芯片实现,ESC为从站控制微处理器提供同步的中断信号和时钟信息,分布时钟单元可以产生两个同步信号SYNC0和SYNC1,用于给应用层提供中断或直接触发的输出数据更新。MCU可以通过ESC的中断信息和时间漂移寄存器的值更新本地系统时钟。分布时钟是从站的重要功能,SSC和SOES都实现了分布时钟,可以参考这两者的设计实现该功能。SDK目前从站代码开发主要有两种方式: 基于现有的代码进行移植:目前对于成熟的ESC(ET1100、LAN9252、AX58100)都有比较成熟的解决方案。但移植仍然要求对代码较为熟悉,如果添加新功能较为困难,综合来看较为麻烦;基于从站软件生成:SSC,SOES和KPA都提供了对应的从站代码生成器,但是SSC是针对自己的的PIC32芯片的,仍然需要手动移植代码;SOES和KPA的从站软件都属于商用软件需要较高的授权费;因此通过一个SDK简化从站开发流程是有必要的,参考SOES的slave editor,SDK所需的功能如下:从站基本信息:允许通过界面添加XML的必要信息,例如vendor ID,product ID等;数据链路层配置,允许通过界面配置FMMU,SM同步管理器和邮箱;PDI的配置:允许通过界面配置PDI相关寄存器;PDO的配置:这是从站软件的核心,允许通过界面直接添加和管理PDO,由于PDO是从站最重要的功能,此功能将极大简化从站开发过程;代码生成和XML的生成。SOES的上位机软件从站性能从站响应时间从站响应时间是从站的性能指标,指从发送一帧数据,经过每个从站ESC的处理,到主站接收到这帧数据的时间。从站响应时间主要由硬件和网络结构,数据传输量决定,具体地:带宽:传输延时和带宽有关系,对于单个bit,从发送到确认,不考虑线路损耗的时间是(1/BandWidth)。假设EtherCAT网络的带宽是100Mbit/s,则每字节的传输延时是(1/100M)*8 = 80us;主站硬件延时:主站硬件同样存在延时,一般在几us左右;主站软件延时:主站软件一般会带来几微秒的延时,取决于主站的性能;从设备数量:每个MII/PHY接口的ESC会带来1us的延时,而EBUS接口的则只有0.3us;KPA studio的数据界面,在运行状态下可以查看从站响应时间。编辑于 2023-08-29 15:47・IP 属地浙江EtherCAT 总线驱动器赞同 2011 条评论分享喜欢收藏申请转载文章被以下专栏收录EtherCAT介绍工业以太网总线EtherCAT技 EtherCAT Diagnostics 诊断 - 知乎首发于深入浅出之Beckhoff切换模式写文章登录/注册EtherCAT Diagnostics 诊断噜啦啦学而时习之,不易悦乎一、EtherCAT 错误是怎么检测到的?EtherCAT 通常具有“即扫即用”的特性,扫描网络、启动系统,所有组件就运行起来了。绝大多数情况下不需要设置任何参数。发现EtherCAT网络的通讯问题,典型的情况是因为以下原因:机器停止工作,或者控制项目 (PLC 程序, NC 任务…) 接收到的数据值明显与实测值不一致。示波器测到信号为True,而PLC变量值为False.在TwinCAT项目中显示了错误(典型的情况是在Master Online页面或者TwinCAT Logger)二、EtherCAT 网络中的错误类型能影响到EtherCAT网络的错误分为2大类:1.硬件错误物理介质中断:数据帧无法达到所有从站,或者根本不能回到主站。信息破坏: 数据帧到达网络中的所有从站并回到了主站,但有一些内容改变了。2.软件错误启动时从站达不到OP状态,因为来自主站的一个或多个初始化的命令被检测到不正确由于在操作过程中检测到错误,一个正常工作的从站突然脱离OP状态EtherCAT 分别从硬件和软件层面提供了丰富的诊断信息, 诊断信息可以按下图归类:三、周期性同步诊断周期性同步诊断 – Working CounterWorking Counter 是和过程数据(Process Data)一起的周期性送回主站的唯一诊断信息,所以这是最早能被主站和用户程序检测到的报警标记。一个EtherCAT数据帧中的每个数据报文都以一个16位的Working Counter (WKC)结尾,WKC 每经过一个数据报文中指定的从站就会递增,递增的原则如下:Read-only 命令(xRD): 如果从站内存可读,则 WKC+1.Write-only 命令(xWR): 如果从站内存可写,则 WKC+1.Read+Write 命令(xRW): 如果从站内存可读 WKC+1,可写则 WKC+2 (i.e. 如果读写都成功则 WKC+3).1.主站检查返回的每个数据报文的WKC值返回主站的数据报文中的WKC 当前值 = 预期值 →WKC 有效,数据报文中的输入数据转发给控制程序(PLC, NC, …)每个总线周期主站都会验证 Working Counter.返回主站的数据报文中的WKC 当前值 ≠ 预期值 →WKC 无效,数据报文中的输入数据被丢弃 (PLC/NC 使用旧的数据)本页是WKC验证有效的情况验证的结果就在每个同步单元Sync Unit的从站的WcState信息中标记,验证成功则WcState为0,验证失败则WcState为1这就是为什么一个同步单元Sync Unit会共享同一个WcState标记,而任一从站读写不成功都会导致整个数据报文都无效。读写不成功的原因:从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因。在最新版的TwinCAT 3.1中,可以把单个从站(左图)或者全部网络从站(右图)配置为:主站把 无效的输入数据全部置 0 而不是废弃之。这个功能更加危险,如果开发人员考虑不周,可能性会引起程序误动作。慎用!2.Working Counter 相关信息:很少能检测到具体是哪个或者哪些从站没有成功处理数据报文(数据报文中指定地址的从站没能成功增加数据报文的WKC)。不会报告错误原因(从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因)。WKC与数据帧同步到达,主站以最快的速度作出故障响应,立即向控制程序或者用户提供一个故障标记位。WKC的有效标记位通常还需要与硬件或者软件诊断信息同时使用,这些诊断信息可以 由主站发送命令读取回来,并帮助定位故障位置和故障原因。Working Counter 的主要目的是立即检测出通讯错误, (i.e. 为了主站快速做出反应), 而不是为了精准分析通讯错误四、Working Counter 和 Sync Units(WKC和同步单元)1.SyncUnits(同步单元) 把从站分为不同的组,每个组使用不同的数据报文,所以每个同步单元具有独立的 WKC。对于伺服驱动器,为了精确定位故障点,可以把每个伺服都设置为独立的同步单元。对于IO模块,可能把一个耦合器及所带的IO模块,配置为一个同步单元。为了优化的目的,Sync Unit 的配置是一个可选的步骤。关于如何分配同步单元,并没有一个黄金法则,因为这是由项目决定的:通常来讲,工作时紧密相关的从站应该分配到同一个同步单 元,而功能相对独立的从站应该放到独立的同步单元。2.在 TwinCAT中指定 SyncUnitTwinCAT为不同的Sync Units(同步单元)创建独立的数据报文,每个报文拥有自己 Working Counter 计数器五、硬件诊断1.硬件状态速览主站的 Online 页面,提供了诊断网络硬件问题的最佳方法系统上电时候可能产生硬件错误,并在TwinCAT中累加,而通常这些错误并不代表有问题。所以,查找可能的硬件问题时,建议清除程序启后的所有错误计数,这样才能监视到运行过程中 发生的实际错误次数。2.初步检查 – 拓朴错误VPRS = Vendor ID, Product Code, Revision Number, Serial Number: 网络启动时主站扫描到的拓朴结构与TwinCAT 配置文件的朴拓结构不符。此类错误的原因,可能只是简单地插错网线。3.初步检查 – 接地和屏蔽发生硬件错误时,建议必须检查EtherCAT网络设备是否共用同一个接地(因为不同接地之间的 环流可能导致数据损坏)。关于EtherCAT网络安装的更完整、全面的描述信息,请参考ETG文档 ETG.160 “EtherCAT Installation Guidelines” ,可以从ETG官网www.ethercat.org.下载。4.初步检查 – EBUS 电流每个 EL 模块都会消耗若干 EBUS 电流,硬件故障发生时,建议必须检查每个I/O组的可用Ebus电流。根据经验,EBUS耗电量大的模块,比如网关模块EL6xxx,在保证其EBUS供电足够的前提下,建议散放在耗电量小的模块( 比如普通DI/DO模块)之间,所以尽量不要几个网关模块挨在一起,也不要紧挨着控制器或者耦合器放置。这是从散热的角度考虑。电流消耗达到限值时,应插入一个 EL94xx 模块。EL9100电源模块不仅可以接入负载电源,还有散热的作用,是最便宜的发热量最小并且能传递EBUS的模块。相同价格的还有EL9186/EL9187等电位分接模块。5.Emergency Scan(紧急扫描)Emergency Scan (紧急扫描)操作,可以发送预定数量的探测数据帧,用于快速测试物理连接 (TwinCAT 应处在 Config Mode):Emergency Scan 能够快速检查EtherCAT网络的永久硬件问题 (设备、电缆或者接头损坏)。用Emergency Scan的方法很难检测到随机的/不定时的干扰,处理这种干扰,应该进行完整的error counter analysis (错误计数分析)。6.EtherCAT 端口的硬件诊断为了进行更深入的分析,从站提供了基于端口的(port-specific)硬件错误计数。EtherCAT 定义了端口号 0 to 3 (端口 0 总是输入口),而TwinCAT 中通常把这些端口依次叫做A 到 D (A 总是输入口),两种端口定义方式是等效的:Master的Online页面,可以在线看到CRC校验错误计数。大部分从站是两个数字,耦合器EK1100有3个数字,而分支模块EK1122则会有4个数字。7.Link Lost (连接丢失)错误计数器有时候两个EtherCAT从站之间的物理连接可能会完全中断:信号完全无法到达相邻的从站。Link loss(连接丢失),最有可能的原因是:电缆或接头损坏(电缆连接),接触弹片不够力或者氧化( Ebus连接)。一个或者几个从站掉电。一个端口上的物理连接中断,从站就会把该端口的 Link Lost Counter(连接丢失计数器) 加 1。Register 内存地址长度含 义0x03101 字节port 0 的连接丢失次数0x03111 字节port 1 的连接丢失次数0x03121 字节port 2 的连接丢失次数0x03131 字节port 3 的连接丢失次数物理连接的状态发生久性或暂时性的改变,在TwinCATLogger消息区中都会报告(并且保存在Windows Log 中)。8.Link/Activity (连接/活动)指示灯连接的永久中断很容易检查出来,不用分析连接丢失计数器( Link Lost Counters ),只需要简单查看主站的Online页面:9.无效帧(Invalid frame)错误计数器有时候,即使硬件信号到达了相邻的从站,接收到的信号却与最初发送的不一致:数据包发生损坏,最有可能的原因是:如果该错误计数零星增加,极可能是由于外部 EMC 干扰。如果该错误计数快速且稳步增加,极可能是由于设备损坏。一个端口上的数据帧破坏,从站就会把该端口的 InvalidFrameCounter(无效帧计数器)加 1。RX 错误计数器 和 CRC 校验错误计数器,都意味着硬件接收到的数据帧损坏,表征信息非常相近,但是二者分别是在从站架构的不同层面检测到的,其含义也略有不同。10.物理介质上的信号传输0和1的逻辑序列要在物理介质上传输,需要编码成预定义的电压/电流 电平(或者电平转换)。电流/电压 值的序列叫做 symbols(符号).基于特定的硬件编码标准,电流/电压值的可能序列并不是全都具有含义,这样就有了 有效符号和无效符号的分别。物理介质上符号是连续传输的,既在Ethernet数据帧内也在数据帧外(数据帧外的符号序列是为了让接收方及时检测到可能发生的连接丢失错误)通讯由符号序列组成携带着有含义的信息的符号序列,就是Ethernet 数据帧。两个Ethernet数据帧之间传输的符号序列,就是 数据帧间隔硬件错误分为两种类型,都在无效帧计数器中累计。RX Errors:个别符号错误 (被特定的硬件解码器识别为无效).在数据帧内部或者外部都可能发生(即使是在没有数据帧传输的时候,每个物理接口都会传输 idle 即表示空闲的符号)→ RX Error Counters (无效帧计数器的高字节)CRC Errors:整个数据帧的循环冗余校验(CRC)错误.在数据帧内发生 (只有Ethernet 数据帧才进行校验).→ CRC Error Counters (无效帧计数器的低字节)11.RX 和 CRC 错误的类比硬件通讯介质上的数据传输可以用标准的语言书写来打个比方:RX 和 CRC 错误 在解释上具有细微的差别,例如:CRC校验只检查数据帧(Frame)内语义是否正常,但并不能发现网络帧间隔的非法字符。RX校验所有字符是否非法。CRC 错误 – 什么情况下会检测出来?12.链接丢失(Lost Link)错误的简单监视在EtherCAT主站的Online页面可以监视到链接丢失(Link Lost)只要在主站的Advanced Setting中启用累加计数“Show Change Counters”即可:添加这些操作是不需要重启TwinCAT软件的此计数表示与从站的物理连接丢失的次数(1表示首次连接,>1表示在运行期间至少出现过1次 物理连接丢失)。在EtherCAT主站的Online页面可以监视到数据帧错误(Frame error)即从站的RX Error计数寄存器的低字节,错误计数如下:从站的Frame Error计数器中保存着自TwinCAT启动以来的累计出错次数,点击“Clear CRC”所有从站的CRC计数清零,并重新累计。13.怎样正确跟踪硬件错误计数为了追踪硬件错误计数,建议进行以下设置:在主站的Advanced Setting中 不要勾选 “Log CRC Counters” 标记。在Online视图中添加注册字 0x0300÷0x030A 和 0x0310÷0x0312。激活并重启 TwinCAT 配置:重启TwinCAT后,清空所有错误计数:TwinCAT 中,EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值。等待,直到错误补检测到:捕捉到的错误次数越多越好 (关闭项目或者重启TwinCAT就会清除计数,而最小化项目或者切换窗口则不会清除计数). 记录的值可以导出,以供进一步分析。错误计数采集完成后,记得应把 “Log CRC Counters” 重新勾选上。(TwinCAT 需要重启).14.怎样定位一个错误?为了从显示的CRC错误计数分析出网络中的故障点分布情况,建议:逻辑上沿着网络数据帧传播的方向确定从站端口执行CRC校验的顺序(根据 前述信息 previous information):根据前面确定的顺序检测第一个报告RX Error Counter >0 的端口:在网络中定位第一个报告RX Error的故障点:报告无效错误计数器不为零的第一个端口 → 极有可能就是故障点。15.在故障点采取什么措施?在上页定位到故障点 previously located 后,应进行以下操作 :检查与上个从站之间的连接电缆:EtherCAT网线的走向是否靠近电源线或者干扰源?是否自制电缆的接头做工很差?电缆的屏蔽层是否接地良好?检查故障点的站和前一个从站:是否供电不足 (供给本站的电流太小, 例如:EBUS 电流)?两个从站的接地点不是等电位?试着替换该从站和前一个从站,或者交换二者的顺序,以查看错误是跟随某个从站还 是出现在原先的位置。对于 EMC 干扰, 应该会导致 RX 和 CRC 错误都有增加 (即使二者增加的机率可能不同), 因为外部干扰不可能与通讯同步,于是在Ethernet 数据帧内部和外部都会破坏数据。完全不平衡的计数值 (RX错误很多,而没有CRC错误,或者很CRC错误而没有RX错误)可能意味着其中一个从站的内部硬件错误。16.深入了解 - CRC 错误的转发机制部分从站还额外支持 转发CRC错误计数器(Forwarded CRC Error Counters): 第1个检查出CRC错误的从站,其CRC 错误计数器(Register 0x0300)增加,第2个及之后再检查出CRC错误的从站则增加其转发CRC错误计数器(Register 0x0308)而CRC 错误计数器保持不变。并非所有从站都支持 转发CRC错误计数器(Forwarded CRC Error Counters) 功能 (该特性为可选项) ,所以该计数应视为补充信息: 有助于定位出错的第1个设备,但不是关键指标。17.深入了解 – 转发CRC错误的计数器TwinCAT 中, EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值,所以转发CRC错误计数器( Forwarded CRC Error Counter )的说明如下:18.主站错误计数此外,EtherCAT 主站 也提供硬件错误 计数:EtherCAT 主站支持两种不同的错误计数器 :Rx Errors: 与从站侧的 RX 错误计数器类似,由网卡统计符号错误的次数 (发生在数据帧内和数据帧外的错误).Lost 数据帧: 由于EtherCAT闭环在某处中断未能返回主站的数据帧和返回了但CRC校验错误的数据帧 TwinCAT 都视作丢失的“lost“。在TwinCAT中,如果丢失一个数据帧,则该数据帧包含的所有数据报文(Datagram,即Sync Unit同步单元)都会报Working Counter 错误,显示为所有从站的WcState为Invalid。分别考虑不同的数据帧类型:Cyclic: 周期性数据帧 发送要交换的过程数据( Process Data):Queued: 排队等候的数据帧,包括所有非周期性的数据帧: 邮箱 Mailbox, 状态机 State Machine, 注册字访问 Register access19.在线查看拓扑结构大部分硬件诊断信息,可以在 Topology View 界面监视Topology View 是个 ActiveX 插件,可以导出到任何独立于TwinCAT 开发环境的 Windows 应用。六、Software Diagnostics 软件诊断1.软件层面的错误 – EtherCAT 状态机软件层面的诊断信息,通常与EtherCAT 状态机操作有关: 一旦从站不能按主站要求进入正确的状态, 就会在从站的注册字(Register 0x0134)中报告AL状态代码(AL Status Code)。在 TwinCAT Logger 中也会显示状态机错误:TwinCAT 默认总是试图清除状态机错误,并且把所有从站切回OP状态。此时, 要在主站的Advanced Settings中取消选中该标记。2.状态机切换异常( Unexpected State Transitions )的简单监视在EtherCAT主站的Online页面可以监视从站状态机异常切换的次数,只要在主站的Advanced Setting中启用该计数即可显示:此计数表示与从站的状态机切换异常的次数(1表示首次切换,>1表示在运行期间至少出现过1 次状态切换异常)。3.EtherCAT 状态机错误的类型EtherCAT 状态机错误可以归为2个大类:初始化错误 (启动时从站不能进入OP状态): 状态机切换过程中,主站根据 ESI 文件的内容向从站发送初始化命令. 如果从站检测到一个或者几个 start-up 参数无效,就会拒绝相应的状态机切换。典型 的初始化错误:此时 Register 0x0134 的值显示为:0x0003 : Invalid Device Setup (BK1xxx上配置的KL模块顺序不正确)0x001D : Invalid Output Configuration (配置的输出过程数据无效)0x001E : Invalid Input Configuration (配置的输入过程数据无效)0x0035 : Invalid Sync Cycle Time (在 DC 模式中设置的Cycle Time不支持)运行时错误 (从站退出OP到更低级的状态): 配置正确的从站成功进入OP状态以后,在运行过程中检测到错误,并因此执行切换到更低级的状态。典型的运行时错误:此时 Register 0x0134 的值显示为:0x001A : Synchronization error (网络的抖动导致从站的同步丢失)0x001B : Sync manager watchdog (从站未接收到周期性数据的时间,持续超过了watchdog时间)0x002C : Fatal SYNC error (ESC 再未收到 SYNC 硬件中断)4.发生初始化错误 – 怎么办?从站的 ESI 文件应包含TwinCAT在网络中正确配置该从站所需要的全部信息。如果使用从ESI读取的默认设置来激活配置 (而不做任何手动修改), 从站应该能进入OP状态而不报错。如果发生了初始化错误:确保 ESI 文件复制到了 包含所有从站描述文件的TwinCAT统一路径(ESI 文件中的ProductCode 和 Revision Number 与CoE对象 0x1018 中显示的信息相匹配)。检查从站的默认设置是否改动过,如果改过就删除该从站再在TwinCAT配置中手动添加。(以恢复默认设置)对模块化的从站(For modular slaves) ,检查“Slots” 页面配置的模块与实际连接的模块在型号、数量、顺序上是否严格一致。对具有分布时钟同步功能的从站设备(For DC-Synchronous devices),检查主站的Jitter或者Sync Shift Time的设置是否会妨碍从站正确实现DC同步。如果是这种情况 ,只是检查并不能解决问题,必须联系从站的制造商。5.发生运行时错误 – 怎么办?从站成功进入OP状态以后,在运行时不会无故退出OP状态。如果发生了运行时错误:如果从站发生了 watchdog 错误,检查TwinCAT 软件任务 (PLC 程序, NC 任务, …)是否正确运行,因为在TwinCAT中总是由上述任务触发数据帧的周期性发送和接收。检查主站设备的Jitter表现(抖动范围)是否能证明发生了同步丢失。(最大的Jitter超过通讯周期的20-30%时,很容易发生同步错误)。检查是否发生了硬件错误,比如物理连接丢失,这种错误可能间接导致Watchdog动作,或 者同步丢失 ( 参考“物理层问题的硬件诊断 ”)。如果是这种情况 ,只是检查并不能解决问题,使用 Wireshark 进行追踪会是个有用的办法。6.保存和导出软件错误状态机错误保存在 Windows Log 中,可以导出,以便在即使TwinCAT Logger已经关闭或者不可用的时候,还可以进一步分析:7.历史诊断信息(Diagnose History Object)对于所有应用相关的错误,部分 CoE从站设备支持“历史诊断信息”功能 (Diagnosis History Object ) Register 0x10F3.如果从站支持该功能,TwinCAT 就会额外显示一个页面 “Diag History” :8.邮箱协议错误(Mailbox Protocol Errors)邮箱协议错误( Mailbox protocol errors )是一个指定类的一般性软件错误,它不是厂家自定义的,不影响 EtherCAT 状态机,不会阻止也不会导致意外的状态切换。仅当执行某个特定的邮箱协议所禁止的动作时,才会发生邮箱协议错误。在 ETG.1000.6 规范中,公布了每个邮箱协议支持的错误代码及描述信息。9.发生了邮箱协议错误(Mailbox Protocol Errors )– 怎么办?根据特定的邮箱协议,可能的错误原因是:•CoE-主站试图读写从站的对象字典(Object Dictionary)中并不存在的对象-主站试图对从站的某个“只读” 对象执行“写入”操作。-主站试图以“完全访问”的方式访问从站的某个对象,而从站并不支持该功能。•FoE-文件名错误 (例如, 缺少扩展名*.xxx).-从站需要密码, 但未被正确设置-文件大小超出了从站能接受的范围-从站不在 Bootstrap 状态•EoE-主站试图把从站的 IP-Add(Internal Use)ress 配置为末位为0的值(比如“x.y.z.0”),而EoE从站的Tcp/Ip 协议栈拒绝此设置。注意:•TwinCAT 仅在以下时段 读/写 CoE 参数: -在初始化阶段(Startup 命令) -CoE-Online 页面打开时•如果错误信息显示TwinCAT试图间歇性地读写CoE参数,很可能这是PLC程序的动作。七、TwinCAT PLC 中编写EtherCAT 诊断程序1.在PLC程序中系统地诊断 EtherCAT 状态对于EtherCAT 网络, TwinCAT 自动提供了大量诊断信息,可以在PLC程序中用于检测总线通讯的错误, 以便自动做出响应并报告给用户。用户总是倾向于在PLC程序中实现最少的EtherCAT诊断,因为这样有助于通讯错误发生时节约大量的操作时间。TwinCAT PLC 程序可以混合使用 2 种不同的诊断信息 :周期性信息 : 默认包含在EtherCAT网络的周期性过程映像数据中的 输入数据, 可以直接映射到相应的PLC输入变量 (AT %I*).非周期性信息 : PLC程序调用默认库文件(TcEtherCAT.lib)中指定的功能块,可以获取这些非周期性的EtherCAT诊断信息 。2.TwinCAT 中的周期性诊断信息注意:至少所有从站的 WcState 和 State 变量应链接到 PLC 程序,以便应用程序可以对 EtherCAT 进行最基本的诊断。3.周期性信息 - FrmXWcState 变量允许 PLC 检查每个报文的 Working Counter 信息:每个配置的Frame都具有一个16位的诊断变量 FrmXWcStateFrmXWcState 的每个位对应Frame中的特定报文如果对应报文的Working Counter错误,这个位就会变为TRUE4.周期性信息 - WcState 变量这是每个从站的过程数据中都具有一个布尔型变量如果报文的Working Counter 错误,报文中所有从站的WcState 变量都会被置位,所以,如果一个从站的 WcState = 1, 也并不表示它本身发生了错误。 (内部使用) 进一步的信息需要查看这些 WcState 为 1 的从站的16位状态变量 State5.周期性信息 - State 变量EtherCAT Master汇总从网络收集的诊断信息,周期性地更新State变量,对应几种错误情况:6.周期性信息 – State 变量状态变量报告的错误诊断信息如下:7.非周期性信息 – TcEtherCAT PLC Library在TC2和TC3的默认安装中都免费提供TcEtherCAT.lib库, 该库包含若干功能块,可以对EtherCAT网络进行非周期 性诊断Frame 分析CRC 分析从站识别配置从站的数量和列表实际从站的数量和列表该库原则上允许PLC程序自动读取在TwinCAT开发环境中 在线显示的所有信息。功能块FB_EcGetSlaveTopologyInfo功能块FB_EcGetSlaveTopologyInfo返回关于不同从站的端口如何相互连接的信息,以及(配置的)网络拓扑结 构的信息,(如果配置了热连接组,则它们将列在阵列的末尾)。功能块FB_EcGetConfSlaves功能块 TwinCAT 离线配置,知道 EtherCAT 网络包含哪些从站。功能块 FB_ecgetscannedsaves功能块 FB_ecgetscannedsaves 使 PLC 可 以 获 取EtherCAT网络在线检测的实际从站信息,以便和使用FB_EcGetConfSlaves 获得的离线配置的从站信息进行比较。功能块 FB_ecgetscannedsaves功能块FB_ecgetallslavercerrors可以周期性调用,以判断一个或多个从站是否报告CRC错误。这样就可以只对 这些出错的从站调用FB_ecgetslavecercerrorex,以获取进一步的故障信息。功能块FB_ecgetslavecercerrorex功能块 FB_ecgetslavecercerrorex 使 PLC 可 以 获 取EtherCAT主站记录的特定从站的CRC错误信息,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcMasterFrameStatistics功能块 FB_EcMasterFrameStatistics 使PLC可以获取EtherCAT主站检测到的Frame丢失等情况,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcGetAllSlaveAbnormalStateChanges功能块FB_EcGetAllSlaveAbnormalStateChanges,统计每个从站 从 OP 退至 SafeOP 的异常状态切换,但并不报告每次异常切换时相关的特定AL 状态码。功能块FB_EcGetLastProtErrInfo功能块 FB_EcGetLastProtErrInfo 允许覆盖上一次邮箱协议错误 Mailbox protocol error (例如, CoE协议的SDO退出代码).对同一从站的下一次正确邮箱访问会清除此前记录错误信息的内存区。八、附件:使用 Wireshark 进行诊断1.如果软件诊断还不够 – 使用 WiresharkWireshark 并不是用以取代TwinCAT中的诊断功能 。对于用户来说,应当在使用了其它诊断方法都无法找到故障点的时候,才使用这个“终极武器”。使用ET2000 可以在Wireshark中获得最好的捕捉效果为了执行 Wireshark 抓包,有多种不同的硬件配置。2.Wireshark 抓包的硬件配置 1不支持 Windows CE没有精确的时间戳3.Wireshark 抓包的硬件配置 2不支持 Windows CE有精确的时间戳4.Wireshark 抓包的硬件配置 3支持 Windows CE有精确的时间戳5.Wireshark 示例Wireshark 允许追踪每个 EtherCAT 数据帧的 list, structure and content of (在一轮捕捉过程中,每个数据帧会被捕获两次!).下图显示了捕获的一个周期性数据帧:6.Wireshark – 时间戳协议( 仅当使用ET2000时 )使用ET2000时,为了在Wireshark中获取到极为精确的时间戳(time-stamping)信息, 应当启用对ESL协议的解析功能。Wireshark Version 2 支持此功能。7.Wireshark – 时间戳协议( 仅当使用ET2000时 )…在早期的 Wireshark Version 1中操作如下:8.Wireshark – 显示时间的格式使用Wireshark追踪时,用户可以选择最合适的 时间信息 显示格式:9.Wireshark – 部分过滤选项(Filter Options)捕获的数据帧可以使用过滤功能,可用的过滤选项包括:仅捕获周期性数据帧(Cyclic Frame)Filter: (ecat.cmd == 0x0a) || (ecat.cmd == 0x0b) || (ecat.cmd == 0x0c)仅捕获邮箱通讯(mailbox communication)Filter: ecat_mailbox Filter: ecat_mailbox.coe Filter: ecat_mailbox.soe Filter: ecat_mailbox.foe Filter: ecat_mailbox.eoe仅访问特定的注册字或者注册字区间 (register or register range)Filter: ecat.ado == EtherCAT有一个从站掉线:深入了解 - 技象科技 跳至内容 技象科技有限公司官方网站 技象天猫旗舰店技象天猫旗舰店 技象京东旗舰店技象京东旗舰店 IoT演示平台IoT演示平台 首页 解决方案 菜单切换 TPUNB® 城域物联网 菜单切换 智慧农业 环境监测 智慧停车 局域物联网 菜单切换 智慧楼宇 智慧养老 智慧照明 智慧能源 工业智控物联网 菜单切换 动环监控 终端自组网 菜单切换 自组网 产品终端 菜单切换 芯片产品 模组产品 网关产品 应用产品 云平台 关于我们 菜单切换 荣誉资质 合作伙伴 公司一览 招聘岗位 新闻资讯 菜单切换 公司新闻 下载专区 联系我们 首页 TPUNB® 物联网解决方案 菜单切换 城域物联网 局域物联网 工业智控物联网 终端自组网 物联网产品终端 菜单切换 芯片产品 模组产品 网关产品 物联网云平台 关于我们 菜单切换 荣誉资质 合作伙伴 公司新闻 联系我们 Main Menu 首页 TPUNB® 物联网解决方案 菜单切换 城域物联网 局域物联网 工业智控物联网 终端自组网 物联网产品终端 菜单切换 芯片产品 模组产品 网关产品 物联网云平台 关于我们 菜单切换 荣誉资质 合作伙伴 公司新闻 联系我们 技象科技首页 / 行业百科 / EtherCAT有一个从站掉线:深入了解 EtherCAT有一个从站掉线:深入了解作者: 技象物联网
/ 行业百科 / 主站从站, 电子技术 / 2023年10月3日 10:51:51 2024年1月26日 16:31:17 EtherCAT(以太网控制器领域总线)是一种用于工业自动化的网络技术,它可以帮助您实现控制和检测系统的联网。它的一个重要功能是可以检测从站掉线,从而更好地保护您的系统免受损害。本文将介绍EtherCAT有一个从站掉线的原因,如何检测它们,以及如何避免它们发生。 什么是从站掉线? 从站掉线是指从站(也称为从属站)在EtherCAT网络中与主站(也称为控制站)失去连接。从站掉线可能会导致系统故障,因此检测和避免从站掉线是至关重要的。 从站掉线的原因 硬件故障 硬件故障是最常见的从站掉线原因。比如,电源故障、网络连接问题、电缆损坏等都可能导致从站掉线。当从站掉线时,它的状态会从“连接”变为“断开”,从而导致系统故障。 软件故障 软件故障也可能导致从站掉线。比如,从站的操作系统可能会崩溃,从而导致从站掉线。此外,从站的软件可能会受到恶意攻击,从而导致从站掉线。 网络问题 网络问题也可能导致从站掉线。比如,如果从站的网络连接不稳定,或者网络延迟过高,都可能导致从站掉线。 如何检测从站掉线? 使用状态检测 可以使用状态检测来检测从站掉线。EtherCAT系统提供了一种状态检测机制,可以检测从站的连接状态,并及时发出警报。 使用日志记录 可以使用日志记录来检测从站掉线。EtherCAT系统可以记录从站的连接状态,并将其记录在日志中,以便后期查看和分析。 使用监控系统 可以使用监控系统来检测从站掉线。通过监控系统,可以实时检测从站的连接状态,如果发现从站掉线,可以及时发出警报。 总结 EtherCAT有一个从站掉线是一个很常见的问题,它可能会导致系统故障。硬件故障、软件故障和网络问题都可能导致从站掉线。检测从站掉线可以使用状态检测、日志记录和监控系统。通过正确的检测和避免措施,可以有效地防止从站掉线,从而保护系统免受损害。 相关阅读: ChemOffice三个起售:深入了解 MSP430PWM输出:深入了解 FCC认证频段:深入了解 C波段双输出高频头:深入了解 原创声明:文章来自技象科技,如欲转载,请注明本文链接: https://www.techphant.cn/blog/47292.html 文章导航 ← 前一篇文章后一篇文章 → 相关推荐 1月 3 2024 不同种类的路由器 9月 30 20232023年9月30日 10:37:20 M8011是什么指令? 10月 29 2023 20小时十进制是多少? 10月 28 2023 MPO抗体423:一种可能的解决方案 1月 11 2024 探究信号带宽公式BW 10月 18 2023 TDD是什么网络 联系我们 广州技象科技有限公司聚焦物联网底层关键技术,打造100%自主知识产权的TPUNB物联专网,形成完备的物联感知系统参与各垂直行业的整体解决方案及项目建设。 品牌京东旗舰店 品牌天猫旗舰店 公司招聘岗位 免费技术咨询 站内资讯 单道批处理系统可以抢占吗 2023年12月31日 07:25:30 智慧停车传输原理是什么? 2023年6月21日 21:13:42 使用串口转网口后怎么通信 2023年9月16日 19:49:50 直接存取的存储设备 2024年1月9日 21:45:33 ModbusTcp主站和从站的区别 2023年6月27日 09:45:06 UART串口通信线长度限制 2023年9月27日 23:58:42 lora模块的作用 2023年11月27日 11:43:48 USB转TTL串口模块:让您的计算机更加灵活 2023年10月17日 08:58:34 串口扩展卡是什么 2023年9月14日 20:45:48 lora物联网系统架构 2023年8月30日 20:36:51 站内标签 物联网 STM32 Modbus UART zigbee RS232 电子技术 无线模块 串口通信 智慧农业 通信系统 监测仪 CAN通信 LoRa USB DTU 无线通信 RS422 传感器 RS485 最新资讯 频域特征参数有哪些 路径损耗公式中,路径损耗随传输距离如何变化 无线电波的发射和接收过程 工业数据采集器的作用有哪些 广域网采用什么拓扑结构 芯片封装工艺流程 物联网通信技术有哪些应用场景 ISP芯片和SoC芯片有什么区别 产品服务 TPUNB® 城域物联网 局域物联网 工业智控物联网 终端自组网 芯片产品 模组产品 网关产品 技象科技成立于2018年,是中国电子科技集团公司科技成果转化和混合所有制改革的科技企业。 服务条款隐私政策关于我们联系我们 © 2024 广州技象科技有限公司 版权所有 粤ICP备19000791号-2 首页 | 隐私政策 | 关于我们 | 联系我们 | 网站地图 免费咨询组网方案 ethercat从站频繁掉站,怎么才能解决呢?-专业自动化论坛-中国工控网论坛 当前位置:工控论坛 > 产品 > PLC > 汇川(INOVANCE)PLC 我要发帖 ethercat从站频繁掉站,怎么才能解决呢? 点击:1928 |
回复:13 like821080 关注 私信 精华:0帖 求助:5帖 帖子:17帖 | 60回 年度积分:378 历史总积分:973 注册:2008年3月14日 发表于:2023-04-16 08:46:53 楼主 求助帖30分-已结帖 现场:ac801 PLC挂2个汇川的远程IO从站,11个汇川伺服,一个松下伺服,一个禾川伺服 和一个阀岛(阀岛为最后一个ethercat从站)问题:上电的情况下,所有的ethercat从站都掉站了。可以通过断电重启或从软件上重新启动PLC解决像这种情况怎么处理呢?etherCAT走线情况为AC801 -》 远程io -》11个汇川伺服 -》远程IO ->阀岛 分享到: 收藏 邀请回答 回复楼主 举报 楼主最近还看过·银行保函和备用信用证“无用”最好·wincc7.3下载地址,免狗,亲测可用·厉害了,阿伯伯(ABB)2017ACW现场快报!【图文直播】·#工程师节#杨国宏:谈谈自控维修工程师那些事儿·积分系统改版了,重说工控论坛积分那点事儿…… yang20908 关注 私信 精华:0帖 求助:0帖 帖子:2帖 | 1342回 年度积分:118 历史总积分:7918 注册:2010年4月06日
发表于:2023-04-16 18:36:42
1楼 网线要买超六类屏蔽层 硬件问题要解决 回复 引用 举报 121111115 关注 私信 [版主] 精华:0帖 求助:0帖 帖子:3帖 | 378回 年度积分:594 历史总积分:21966 注册:2016年1月20日
发表于:2023-04-16 22:26:28
2楼 在程序上解决,如果总线离线就重新初始化总线,直到在线为止。网线要有屏蔽层,屏蔽层要接上。终端电阻该开的时候要开。这种高速总线一般距离不要超过10米,超过10米实时性就低了,尽可能的缩短总线的距离。 回复 引用 举报 关注 私信 精华:0帖 求助:5帖 帖子:17帖 | 60回 年度积分:378 历史总积分:973 注册:2008年3月14日
发表于:2023-04-17 07:56:50
3楼 etherCAT有终端电阻? 回复 引用 举报 关注 私信 精华:0帖 求助:5帖 帖子:17帖 | 60回 年度积分:378 历史总积分:973 注册:2008年3月14日
发表于:2023-04-17 08:12:53
4楼 "121111115" 的回复,发表在3楼 对内容: 【在程序上解决,如果总线离线就重新初始化总线,直到在线为止。网线要有屏蔽层,屏蔽层要接上。终端电阻该开的时候要开。这种高速总线一般距离不要超过10米,超过10米实时性就低了,尽可能的缩短总线的距离。...】进行回复: -----------------------------------------------------------------有两个问题 1.如何在程序上初始化总线呢? 2.网线的终端电阻有吗? 回复 引用 举报 LBX112233 关注 私信 精华:0帖 求助:0帖 帖子:10帖 | 713回 年度积分:214 历史总积分:601 注册:2012年5月10日
发表于:2023-04-17 11:17:23
5楼 学习学习,谢谢分享 回复 引用 举报 yang20908 关注 私信 精华:0帖 求助:0帖 帖子:2帖 | 1342回 年度积分:118 历史总积分:7918 注册:2010年4月06日
发表于:2023-04-19 20:32:41
6楼 "" 的回复,发表在3楼 对内容: 【etherCAT有终端电阻?】进行回复: -----------------------------------------------------------------基于工业以太网没有终端电阻,基于RS485的现场总线如(如DP CC-link Can)才有终端电阻概念 回复 引用 举报 121111115 关注 私信 [版主] 精华:0帖 求助:0帖 帖子:3帖 | 378回 年度积分:594 历史总积分:21966 注册:2016年1月20日
发表于:2023-04-19 21:02:07
7楼 引用 "" 的回复,发表在4楼 内容: "121111115" 的回复,发表在3楼 对内容: 【在程序上解决,如果总线离线就重新初始化总线,直到在线为止。网线要有屏蔽层,屏蔽层要接上。终端电阻该开的时候要开。这种高速总线一般距...程序上检测到设备掉线你就重新调用一次通讯块,相当于重新建立连接。通讯成功与否是有标志位的,依据这个在规定的时间内操作初始化总线。终端电阻搞错了,我以为是CANopen。 回复 引用 举报 乖乖小笨熊 关注 私信 精华:2帖 求助:0帖 帖子:1210帖 | 11287回 年度积分:2461 历史总积分:62658 注册:2006年8月05日
发表于:2023-04-20 08:56:24
8楼 你这个硬件的问题较大,应该是硬件网线问题或者各个品牌采用的RJ45口材质问题,E_Cat总线尽量不要用8芯网线,采用4芯专用网线吧,我以前遇到频繁掉线更换为汇川自己出品的4芯E_Cat专用网线就正常了,当然用那种好质量的PN专用网线也可以,普通网线在那种最大刷新才4mS的总线面前,干扰就足矣把总线干死翘翘 回复 引用 举报 小起子 关注 私信 精华:0帖 求助:0帖 帖子:1帖 | 383回 年度积分:6 历史总积分:118 注册:2017年4月06日
发表于:2023-05-18 09:10:18
9楼 感谢楼主分享 回复 引用 举报 Smile-lyc 关注 私信 [管理员] 精华:128帖 求助:50帖 帖子:3484帖 | 22331回 年度积分:1963 历史总积分:145694 注册:2006年8月04日
发表于:2023-06-10 16:48:58
10楼 感谢求助者和答疑者对求助答疑板块的厚爱,赠人玫瑰,手留余香。对于求助者要求:1、请在一个月内自行结贴,把悬赏积分(如果设置积分悬赏求助)发放给答疑者;2、如果在求助答疑过程中,自己已经有效解决问题,建议大家把解决问题方法在自己求助帖分享,有效分享可以获得50积分奖励。3、求助答疑板块版主结贴时间一般滞后30~45天,以方便大家对求助问题答疑足够时间,也为了每一个优秀答疑人员都可以获取到自己的积分和MP奖励。4、2023加油!! 回复 引用 举报 广州电气兼职 关注 私信 精华:0帖 求助:0帖 帖子:0帖 | 429回 年度积分:0 历史总积分:75 注册:2013年8月09日
发表于:2023-06-14 11:21:25
11楼 学习学习,谢谢分享 回复 引用 举报 olove83 关注 私信 精华:0帖 求助:0帖 帖子:6帖 | 414回 年度积分:961 历史总积分:1710 注册:2008年6月17日
发表于:2023-08-11 10:25:56
12楼 买成品专用的网线就可以了,不要自己制作网线 回复 引用 举报 木木木鱼 关注 私信 精华:0帖 求助:0帖 帖子:0帖 | 6回 年度积分:0 历史总积分:171 注册:2020年11月27日
发表于:2024-03-06 20:07:21
13楼 引用 "" 的回复,发表在4楼 内容: "121111115" 的回复,发表在3楼 对内容: 【在程序上解决,如果总线离线就重新初始化总线,直到在线为止。网线要有屏蔽层,屏蔽层要接上。终端电阻该开的时候要开。这种高速总线一般距...同问 回复 引用 举报 热门招聘 相关主题 PLC ERR指示灯亮着,怎么解决...[21351]继电器输出型PLC,驱动一交流...[8103]PLC时序图分析方法求助![9441]工控老鬼 工程师成长之路(1)...[9454]学习和利时PLC过程中遇到的问...[7234]USB-SC09下载线驱动(jiachen...[7364]2019年第一个项目——简述[7731]PLC和HMI基础入门视频,欢迎大...[7449]手动控制与自动控制方式的请...[13160]信捷PLC加密了 程序下不进 读...[14250] 官方公众号 智造工程师 客服 小程序 公众号 工控网智造工程师好文精选 【EtherCAT】4.实现一个成熟的从站 - 知乎首发于EtherCAT切换模式写文章登录/注册【EtherCAT】4.实现一个成熟的从站小皎皎一只可爱的小皎皎学习EtherCAT最好从从站开始,因为从站包含了EtherCAT大量原理,例如状态机,PDO映射等。学习从站代码有利于理解过程数据如何传输,XML有什么作用。本文介绍一些从站的基础知识,以及如何设计一个功能完善的从站。从站硬件无论是以ASIC还是FPGA的形式,ESC都是从站的核心,主站通过读写ESC的DPRAM空间实现数据传输。ESC通过PDI接口将数据发送到MCU,在MCU中执行实际的应用层操作。ESC根据倍福公司的IP core设计,目前主流的ESC芯片包括: ASIX公司的AX58100芯片;BeckHoff自己的ET1100芯片;Microchip的LAN9252芯片;FPGA:ET1810(altera)和ET181(xilinx);由于都是基于BeckHoff的IP core设计的,因此这几个芯片在实际功能上差距并不大,区别在于DPRAM的大小,SM的数量,FMMU的数量,PDI的方式等。芯片网口FMMUSMRAM(kBYTE)数字IOSPI slaveLocal BUSAX581002内部PHY,1MII88932Y8/16 asyncLan92522内部PHY,1MII34432Y8/16 sync/asyncET11004EBUS/MII88816Y8/16 sync/async关于芯片的详细参数,可以访问ESC具有各类AL寄存器供主站访问,但实际不执行具体的应用层操作,从站应用层的管理由专门的MCU进行。stm32有强大的性能和完善的生态,因而是应用层使用最为广泛的芯片,也可以采用其他的硬件例如Arduino或者ESP32实现应用层逻辑,但是要支持对应ESC的相关PDI接口。一般来说,从站硬件系统如下图所示:从站最小系统从站软件从站帧的链路层功能都是由ESC完成的。从站软件运行在MCU中,主要执行的是应用层的操作。MCU通过PDI接口读取ESC中的PDO和SDO数据,然后执行应用层的处理,例如状态机,COE,EOE等相关逻辑。MCU需要一套协议栈执行相关的逻辑,目前使用最多的从站协议栈是EtherCAT技术组(EtherCAT Technology Group,ETG)为会员提供的Slave Stack Code(SSC),SSC支持几乎所有应用层协议栈(EOE,COE,FOE)等,同时还提供了对专有协议Cia402等的支持。除此之外,SSC还提供了专门的工具来配置协议栈和PDO。SSC的缺点是,它是针对BeckHoff自己的PIC和ET1100芯片写的,如果使用stm32或者其他通用处理器,需要手工移植代码。ssc的代码框架除了SSC之外,另一个比较有名的EtherCAT开源协议栈是SOES(GitHub - OpenEtherCATsociety/SOES: Simple Open Source EtherCAT Slave),SOES支持EOE和COE这两种较为常用的应用层协议,同时支持静态和动态的PDO映射。SOES的代码相较于SSC精简很多,代码可移植性较好。商用从站协议栈中,比较具有代表性的是KPA协议栈(https://koenig-pa.de/products/ethercat/kpa-ethercat-slave-stack)。作为商用协议栈,KPA协议栈几乎支持所有的EtherCAT特性,包括: 邮箱协议:COE,EOE,FOE,SOE,VOE 分布时钟DC;不同的扫描速率;从可移植性的角度,KPA协议栈实现了一个硬件抽象层,支持不同ESC和主控芯片的数据交互。下图是KPA协议栈的程序结构,从图中可以看出,数据从DPI传输到MCU后,首先通过的是硬件抽象层,主循环轮询AL事件来获取过程数据和邮箱数据的更新,然后基于对象字典更新PDO和SDO。从站功能操作系统层对于实时性和同步要求极高的场合,一般一个系统运行一个从站任务就好了,例如电机驱动从站,此时不建议使用操作系统,直接进行SSC协议栈移植即可。但是实时要求不强的场合,每个任务/接口使用一个从站是很浪费的,毕竟ESC还是有点小贵的,对于任务很多的从站,还是有必要上嵌入式实时系统。下面介绍一下嵌入式操作系统的作用。操作系统层的主要作用是合理对从站任务进行调度。作为现场总线的一部分,一个EtherCAT从站一般至少包含两个任务,一个从主站获取EtherCAT数据,另一个与控制设备(比如电机或CAN总线)交互。在多任务环境下,为了确保EtherCAT通信的实时性、增强任务调度的合理性、有效利用系统资源,从站应当基于实时操作系统进行开发。相较于Linux等操作系统,嵌入式操作系统具有如下特点:小型系统:由于嵌入式设备功能明确,操作系统往往与应用程序编译在一起运行。实时性:嵌入式操作系统往往是实时操作系统。很多嵌入式设备对处理的实时性有严格要求,这种实时性是通过操作系统层面的任务调度机制、任务优先级的设定和应用程序的快速处理来达到的。可移植性:由于嵌入式设备的应用场景多样,复杂程度千差万别,应用程序的大小各不相同,移植的需求是频繁发生的。ucos,vxworks,FreeRTOS和RT-thread是较具代表性的实时操作系统。这里以RT-thread为例介绍嵌入式实时系统的组成,RT-thread不仅是一个实时操作系统,也是一个完善的嵌入式软件生态。它的底层是RT-thread内核,基于内核还提供了网络框架,设备框架,以及各类API。最后在应用层还提供了各类具体应用。RT-thread架构线程管理 RT-thread内核是一个RT-thread程序的核心,RT-thread内核是一个基于优先级的全抢占式多线程调度系统,在该实时系统中,线程是最小的调度单位,系统中除了中断处理函数、调度器上锁部分的代码和禁止中断的代码是不可抢占的之外,系统的其他部分都是可以抢占的,包括线程调度器自身。RT-thread的线程调度关系如下。在RT-thread 中,实际上线程并不存在运行状态,就绪状态和运行状态是等同的。RT-thread线程RT-thread最多支持256个线程优先级,0优先级代表最高优先级,最低优先级留给空闲线程使用。同时它也支持创建多个具有相同优先级的线程,相同优先级的线程间采用时间片轮转调度算法进行调度,使每个线程运行相应时间。线程间通信 RT-thread支持线程间的同步和通信。采用信号量、互斥量与事件集实现线程间同步,线程通过对信号量、互斥量的获取与释放进行同步。支持邮箱和消息队列等通信机制。邮箱和消息队列的发送动作可安全用于中断服务例程中。通信机制支持线程按优先级等待或按先进先出方式获取。时钟管理 任何操作系统都需要提供一个时钟节拍,以供系统处理所有和时间有关的事件,如线程的延时、线程的时间片轮转调度以及定时器超时等。时钟节拍是特定的周期性中断,中断之间的时间间隔取决于不同的应用,时钟节拍率越快,系统的额外开销就越大,从系统启动开始计数的时钟节拍数称为系统时间。RT-Thread 的时钟管理以时钟节拍为基础,时钟节拍是 RT-Thread 操作系统中最小的时钟单位。RT-Thread 的定时器提供两类定时器机制: 单次触发定时器:这类定时器在启动后只会触发一次定时器事件,然后定时器自动停止。 周期触发定时器:这类定时器会周期性的触发定时器事件,直到用户手动的停止定时器否则将永远持续执行下去。通常使用定时器定时 回调函数(即超时函数),完成定时服务。用户根据自己对定时处理的实时性要求选择合适类型的定时器。内存管理 内存是系统的重要资源,特别是对于资源紧张的嵌入式设备来说。RT-Thread将内存分为动态内存堆和静态内存池,对于动态内存的申请,RT-Thread提供小内存分配算法,slab算法和memheap算法。为了避免内存碎片,提高分配效率,RT-Thread还在.data段提供一个静态的内存池。设备管理 和Linux驱动框架类似,RT-Thread也通过I/O设备模型框架对外设进行管理。I/O 设备管理层实现了对设备驱动程序的封装。应用程序通过 I/O 设备管理接口获得正确的设备驱动,然后通过这个设备驱动与底层 I/O 硬件设备进行数据交互。设备驱动程序的升级、更替不会对上层应用产生影响。这种方式使得设备的硬件操作相关的代码能够独立于应用程序而存在,双方只需关注各自的功能实现,从而降低了代码的耦合性、复杂性,提高了系统的可靠性。硬件抽象层硬件抽象层的主要作用是提升程序的可移植性。与ESC的数据交互,是EtherCAT从站MCU最为重要的功能。MCU通过PDI访问ESC的内存空间,读取寄存器和过程数据,因此,有必要对ESC的数据访问进行封装,封装的目的是保证在MCU应用层能够通过通用的接口实现对不同类型从站ESC,不同接口PDI的访问。关于硬件抽象层的封装,SOES实现了所有硬件访问相关函数:应用层协议EtherCAT从站的目标是能够支持各类应用层协议,这其中最主要的是COE协议和基于COE的各类行规。此外还需要支持FOE,EOE,SOE等协议。COE:CANopen over EtherCAT,EtherCAT协议在应用层支持CANopen协议,并作了相应的扩充,CoE协议完全遵从CANopen协议。COE协议十分核心且复杂,在此不作过多介绍。EOE:EtherNet over EtherCAT,该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。SOE:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。SERCOS应用层协议为主站设计了信息接口,可以通过配置EtherCAT过程数据报文,实现周期性传递伺服驱动器的数据。FOE:File Access over EtherCAT。该协议可以使用EtherCAT总线上传、下载固件,刷新从站的固件。并且可以通过命令行工具加载或存储文件。结合实际需求,COE和基于COE的行规协议CiA402等是必须实现的,FOE、EOE作为程序的扩展功能有必要实现,而SOE不是常用需求。动态PDO映射静态PDO映射是将PDO变量“写死”在从站中,对于实际应用场景是十分不友好的,例如某个机型的电机需要实时传输电机温度,但在另一个机型中不需要温度信息,如果使用静态PDO映射,为了提升传输效率,删除温度PDO,则需要修改代码,烧写固件,更新XML文件。这样会带来巨大的工作量。特别是基于CiA402的驱动器来说,经常要根据上位机软件的需求修改传输变量。动态PDO映射允许定制PDO以满足客户需求,TwinCAT和KPA studio等上位机软件都支持以勾选的形式动态配置PDO。为了使得上位机能够修改PDO assign,需要在xml中配置mandatory为false(SSC在EXCEL)中可以配置。动态PDO映射的基本原理是操作对象字典的0x1C12和0x1C13对象,这两个对象分别管理输出和输入的PDO映射。过程如下:将Ethercat状态机切换到PreOP状态,此状态可以用SDO来配置PDO映射;清除PDO指定对象的PDO映射对象,即设置0x1C12-00,与0x1C13-00为0;PDO映射对象无效,即对0x1600-0x1603/0x1A00-0x1A01的子索引设置为0;重新配置PDO映射内容;0x1600-01开始的是RxPDO内容,0x1A00-01开始的是TxPDO;设置PDO映射对象总数;写有效的PDO映射对象索引到PDO指定对象设置PDO指定对象的总个数,即将映射对象个数写入到1C12-00h和1C13-00h转换Ethercat状态机到安全操作以上,配置的PDO映射将有效。分布时钟EtherCAT各个从站得到帧后会进行处理或者转发,这需要一定的微小时间。但当需要经手的从站多,或者数据量大的时候,积少成多会导致较大的延迟,并且电缆线内信号传输也占有一定的延时时间。分步时钟可以使所有的EtherCAT设备使用相同的系统时间,从而控制各设备的任务的同步执行,支持分布式时钟的从站称为DC从站。为使各个从站的参考时钟达到绝对同步,主站会计算各个从站的偏移时间,这个值会写入对应从站的系统时间偏移寄存器。在从站端,分布时钟由ESC芯片实现,ESC为从站控制微处理器提供同步的中断信号和时钟信息,分布时钟单元可以产生两个同步信号SYNC0和SYNC1,用于给应用层提供中断或直接触发的输出数据更新。MCU可以通过ESC的中断信息和时间漂移寄存器的值更新本地系统时钟。分布时钟是从站的重要功能,SSC和SOES都实现了分布时钟,可以参考这两者的设计实现该功能。SDK目前从站代码开发主要有两种方式: 基于现有的代码进行移植:目前对于成熟的ESC(ET1100、LAN9252、AX58100)都有比较成熟的解决方案。但移植仍然要求对代码较为熟悉,如果添加新功能较为困难,综合来看较为麻烦;基于从站软件生成:SSC,SOES和KPA都提供了对应的从站代码生成器,但是SSC是针对自己的的PIC32芯片的,仍然需要手动移植代码;SOES和KPA的从站软件都属于商用软件需要较高的授权费;因此通过一个SDK简化从站开发流程是有必要的,参考SOES的slave editor,SDK所需的功能如下:从站基本信息:允许通过界面添加XML的必要信息,例如vendor ID,product ID等;数据链路层配置,允许通过界面配置FMMU,SM同步管理器和邮箱;PDI的配置:允许通过界面配置PDI相关寄存器;PDO的配置:这是从站软件的核心,允许通过界面直接添加和管理PDO,由于PDO是从站最重要的功能,此功能将极大简化从站开发过程;代码生成和XML的生成。SOES的上位机软件从站性能从站响应时间从站响应时间是从站的性能指标,指从发送一帧数据,经过每个从站ESC的处理,到主站接收到这帧数据的时间。从站响应时间主要由硬件和网络结构,数据传输量决定,具体地:带宽:传输延时和带宽有关系,对于单个bit,从发送到确认,不考虑线路损耗的时间是(1/BandWidth)。假设EtherCAT网络的带宽是100Mbit/s,则每字节的传输延时是(1/100M)*8 = 80us;主站硬件延时:主站硬件同样存在延时,一般在几us左右;主站软件延时:主站软件一般会带来几微秒的延时,取决于主站的性能;从设备数量:每个MII/PHY接口的ESC会带来1us的延时,而EBUS接口的则只有0.3us;KPA studio的数据界面,在运行状态下可以查看从站响应时间。编辑于 2023-08-29 15:47・IP 属地浙江EtherCAT 总线驱动器赞同 2011 条评论分享喜欢收藏申请转载文章被以下专栏收录EtherCAT介绍工业以太网总线EtherCAT技 EtherCAT主站掉线后,如何保证目标系统免受故障影响?_ethercat中间设备出问题-CSDN博客 EtherCAT主站掉线后,如何保证目标系统免受故障影响? 虹科工业智能互联 于 2022-06-08 13:20:47 发布 阅读量1.7k 收藏 4 点赞数 分类专栏: EtherCAT 文章标签: EtherCAT 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/weixin_47677928/article/details/125182574 版权 EtherCAT 专栏收录该内容 12 篇文章 22 订阅 订阅专栏 所有工业自动化系统都对可靠性和故障时的安全操作有着严格的要求,因为当意外故障而导致停机时,生产所有者将遭受巨大的损失,因而确保生产系统得到妥善保护、免受各种硬件和软件故障的影响十分重要。 EtherCAT技术是工厂车间级别最先进,最高性能的通信接口之一。除了优秀的灵活性和高吞吐量之外,它还提供一些基本的容错功能,以承受可能的硬件故障。这些功能中最强大的功能是线缆冗余,它利用物理环形拓扑结构,当环路实际断开时保持稳定的总线操作。 1. 当主站掉线后如何工作? 与其他基于以太网的工业接口不同,EtherCAT使用hop-to-hop通信协议: 数据报文对连接到总线的所有从设备都是通用的,并且它从一个设备传递到另一个设备。主站是管理者,它循环地创建带有读或写请求,输入输出数据报文,并以严格的时间间隔将其发送到总线。每个从站设备可以插入(写入)或提取(读取)明确寻址到它的数据块。 虽然它旨在有效地利用总线吞吐量,但此功能对于容错非常有用:连接到总线的任何设备都完全知道所有从站的活动,并且可以透明地获取或嗅探总线主站和从站之间传输的数据。用户无需修改任何从站设备、添加任何其他信号或更改传输协议: 此功能不会增加任何成本(除了更智能的主设备)。 2. 虹科EtherCAT主站冗余技术 为了避免控制EtherCAT网络运行的主系统故障所带来的严重后果,虹科推出了EtherCAT主站冗余技术,可以从控制系统无缝恢复故障,即使在同步环境中也能保持运行。 虹科KPA EtherCAT Master 使用此边缘效应将另一个总线主控(或多个主控)引入总线。在正常操作期间, 此冗余主站是被动的,能够嗅探数据但不能输入自己的报文。被动主站被认为是次要的,而活动的主站被认为是主要的。由于所有辅助主站都与总线活动一致,因此当后者失败时,它们随时可以取代主要主站。 另外,为了检测总线上的异常情况,辅助主站可以不需要任何专用控制设备或附加信号线。EtherCAT报文定期、严格地按时间间隔进行。当一个辅助被动主站没有收到他期望的报文时,就知道总线上已经不再有主站了。冗余主站可以立即接管控制,发送自己的报文而没有必要等到当前周期结束。这个报文将是正确的和有意义的,因为辅助主站正在追踪所有的变化,成为有故障主站的替换。 3. 主站冗余技术如何工作? 启用主站冗余的EtherCAT配置包括一个活动的(主站)主设备和一个或多个被动的(辅助)主设备。主设备可能不会配置为Master Redundancy,但最好使用 KPA EtherCAT Master软件来使该技术发挥最大的效用。辅助主站作为影子代理连接到总线。它嗅探传输中的数据报文而没有任何变化。同时,该主站计算每个电报到达的时间并跟踪预期和实际到达时间之间的可能延迟。 当报文延迟时,看门狗定时器启动。在主设备的指定时间超时后,主设备启动其故障转移协议: • 触发内部主站切换:现在主站能够写入总线 • 辅助主站准备的新报文被写入总线 • 在这帧报文中,释放总线的请求被发送给活跃的主站,因为可能仍然在线,但也有一些内部麻烦。先前活动的主设备在恢复后决定控制总线这种情况,我们完全不希望出现 • 新总线主站的控制应用程序被通知在线 可以使用总线配置工具将主动主机返回到被动状态,另一个被动主人将自动控制。为了启用多个冗余主站,它们的看门狗定时器的配置不同,并且可以强制为每个主站随机生成看门狗时间。因此,当两个或多个辅助主设备可以尝试启动故障转移协议时,避免了冲突的情况。 优惠劵 虹科工业智能互联 关注 关注 0 点赞 踩 4 收藏 觉得还不错? 一键收藏 知道了 0 评论 EtherCAT主站掉线后,如何保证目标系统免受故障影响? 所有工业自动化系统都对可靠性和故障时的安全操作有着严格的要求,因为当意外故障而导致停机时,生产所有者将遭受巨大的损失,因而确保生产系统得到妥善保护、免受各种硬件和软件故障的影响十分重要。... 复制链接 扫一扫 专栏目录 参与评论 您还未登录,请先 登录 后发表或查看评论 博客 虹科技术|PTP时钟源设备全攻略:从普通时钟到透明时钟的进阶之路 02-26 821 通过对普通时钟和透明时钟的解析,我们不难发现,在PTP网络中,这两种时钟源设备各自扮演着不可或缺的角色。普通时钟作为网络中的常见节点,确保了终端设备的时间同步;而透明时钟则通过精确的路径延迟计算和校正,为级联拓扑提供了高效的解决方案。虹科RELY-RB作为支持IEEE1588v2功能的设备,其灵活的Web管理器配置方式为用户提供了便捷的操作体验。在实际应用中,根据网络架构和需求选择合适的时钟源设备,并正确配置其参数,是确保网络时间同步性能的关键。 博客 虹科技术|一文详解IO-Link Wireless技术如何影响工业无线自动化 02-01 1068 IO-Link的优势在于,它可以实现全数字化的数据传输,消除了数据隔离和精度损失的问题,简化了布线网络和设备更换的过程,提供了远程配置和诊断的功能,释放了传感器/执行器的潜力,使设备更加智能化。技术是一种先进的工业无线通信技术,它可以改变工业无线自动化的现状,为工业4.0的实现提供了强大的支撑。IO-Link Wireless技术在工厂中的体现不仅如此,在各个角落都可以布置相应的IO-Link Wireless设备进行自动化管理,其为工业无线自动化而生的种种特性都将改变工业无线技术的发展方向。 博客 虹科技术|如何用TSN流识别技术破解航空电子网络的传输难题? 01-15 800 航空航天业专用协议包括AFDX、ARINC等,这些协议带宽较低且供应商稀少,而又由于多网络的平行传输,因此没有一个特定的协议能够适用于一架飞机的所有子系统,组网成本高昂,系统布线也很复杂。通过将专用网络协议栈和TSN协议堆栈相结合,在航电设备当中添加TSN终端网卡MAC,实现TSN终端在航电设备中的集成,外部依旧采用航空交换机进行通信。虹科RELY-TSN交换机可用于无缝实施确定性以太网,该器件基于SoC-e的TSN技术在最苛刻的行业(铁路、航空航天、汽车、工业自动化等)中使用的可靠且经过现场验证的设计。 博客 虹科方案|从困境到突破:TigoLeap方案引领数据采集与优化 01-02 1560 随着工业4.0的深入推进,数据的重要性日益凸显。虹科TigoLeap平台以其卓越的数据采集与优化能力,正在成为企业迈向智能制造的关键助手。通过虹科TigoLeap的解决方案,企业能够更好地应对数据采集的挑战,解锁数据背后的巨大价值。未来,随着技术的不断创新和发展,我们相信虹科TigoLeap将在工业领域发挥更加重要的作用,推动整个行业的数字化转型进程。 博客 虹科技术 | 数字变电站的远程自动化测试:新时代的电力安全策略 12-25 73 随着工业和关键系统对网络安全的要求越来越高,采用多层方法来应对各种安全威胁变得至关重要。本篇文章将重点介绍RELY-TEST如何运用于数字变电站网络安全测试,以及其如何提高电力系统的安全性和效率。 博客 虹科技术 | IO-Link Wireless如何赋能工厂车间迈向无线自动化? 12-11 238 IO-Link Wireless全球标准受到工业领导者的青睐,适用于恶劣的工厂环境和运动控制应用,为全球数以百万计的传感器、执行器和工业设备提供电缆级连接。IO-Link Wireless传输周期的结构是严格定义的,每个IO-Link Wireless主站的无线设备最大数量有限制。IO-Link Wireless的确定性属性确保了网络的可预测性,并实现了Wi-Fi或蓝牙等非确定性协议无法应用的算法。它以IO-Link IEC 61131-9标准为基础,是成熟的IO-Link技术的。 博客 虹科案例 | OPC UA SDK快速扩展VIMANA智能制造软件连接性 12-04 101 此外,VIMANA寻求的是一种易于使用和部署的OPC UA SDK,并为开发人员提供工具、库和文档,以便为使用OPC UA兼容设备的客户快速创建连接解决方案。导读: 虹科Matrikon在为OPC兼容性构建软件方面享有盛誉,VIMANA也因此选择使用我们的FLEX OPC UA SDK来快速扩展其智能制造软件的连接性,从而使用户能够“收听”其所有兼容OPC UA的设备,本篇案例文章将带你了解OPC UA SDK的现实应用和独特优势。用户需要设备之间以及从边缘到云解决方案的开放和安全的连接。 博客 虹科干货 | 一大飞跃!从IO-Link拓展到IO-Link Wireless竟有这么多优势? 11-29 118 随着IO-Link wireless(IO-Link的无线扩展)的出现,工业自动化领域在灵活性、敏捷性和附加优势方面取得了重大飞跃。在这篇文章中,我们将探讨IO-Link的技术特征和IO-Link Wireless为工业带来的优势及解决方案。 博客 虹科分享 | 平衡速度和优先级:为多样化的实时需求打造嵌入式网络(4)——从理论到实践:CANopen源代码配置 11-29 208 本文将基于虹科CANopen源码来研究具体示例,从而阐明配置、优化和微调CANopen协议栈的过程,以满足高级时间要求和可能的系统约束。 博客 虹科干货 | 适用于基于FPGA的网络设备的IEEE 1588透明时钟架构 11-27 381 通过复制必要的模块,该设计可以轻松扩展到两个以上的端口:除了新的OTF校正器之外,每个新端口还应将两个额外的WB Master 0和WB Master 1子模块集成到驻留时间桥中,CRC检查器和CRC生成器连接到每个新的出口端口。在基于FPGA的网络设备中,精确的时间同步至关重要。图2展示了一个简单PTP网络:OC是包含PTP时钟和单个物理网络连接的系统终端设备,而BC是具有多个物理端口的网络设备,它们不转发PTP接收到的消息,而是与主站同步并生成新的PTP消息以与其余从站共享其自己的定时参考。 博客 虹科分享 | 平衡速度与优先级:为多样化的实时需求打造嵌入式网络(3)——CAN与CANopen的实时能力与局限性 11-22 306 本文强调了CAN协议在各种响应时间要求中的适应性和功能。了解应用需求、CAN固有优势以及相关时间限制之间的平衡至关重要。正是这些知识使 CAN 系统设计人员能够在不同的时间场景中做出明智的决策。 博客 虹科分享 | 平衡速度和优先级:为多样化的实时需求打造嵌入式网络(2)——实时通信系统的需求 11-22 249 对于严格的实时性要求,短至10ms甚至更短,必须认真审查哪些网络技术可以满足您的需求。通常,时间触发的通信系统(可在CAN、以太网和其他平台上使用)是最具确定性的。这里,每个有实时性要求的信号都被分配一个专属时隙,确保信号传输的可预测性。 博客 虹科分享 | 平衡速度和优先级:为多样化的实时需求打造嵌入式网络(1)——选择正确的实时范围 11-01 169 各个领域的应用具有不同的响应时间要求,从秒到毫秒不等。通信系统满足这些需求的能力对于实现最佳性能和效率至关重要。然而,了解这些响应时间要求只是难题的一部分,在接下来的文章中,我们将更深入地探讨影响通信速度、延迟和仲裁的技术方案,包括网络架构、带宽和数据处理能力等考虑因素。此外,我们将研究在选择在速度、复杂性和成本之间取得平衡的通信系统时必须做出的权衡和妥协。 博客 虹科分享 | 赋能物流机器人:CANopen通信如何发挥重要作用? 10-19 473 基于CANopen的设备在物流领域的变革历程中发挥重要的作用,如提高物流机器人的效率、实现更加精确可靠的控制,CANopen解决方案能够赋能物流机器人实现更高效的开发与配置。 博客 颠覆传统有线通讯,虹科IO-Link wireless解决方案让智能机床的旋转部件实现可靠低延迟无线通信 10-18 298 无线通信对机器制造商的价值体现在机器设计、开发、交付、部署以及制造商工厂的持续支持等多个阶段。对于智能机床而言,可靠的通信是连接旋转设备的关键和必要组成部分。IO-Link Wireless是此类应用中唯一值得考虑的工业电缆级技术。它具有5毫秒的确定性低延迟、比其他无线协议(如Wi-Fi、Zigbee和BLE)高出一百万倍的可靠性和抗干扰能力,以及经现场验证的承受数千转旋转的能力。 博客 虹科分享 | 独特的FRER机制:TSN如何确保网络的可靠性? 10-11 452 IEEE802.1CB中规定的帧复制和可靠性消除,通过序列编号和在网络中的源系统中选择性地复制每个包,以及消除目标系统中的那些复制,为流提供了更高的可靠性(降低了包丢失率)。在使用冗余时,即使存在单点故障,也可以保证延迟。 博客 虹科分享 | 为工业机器人解绑,IO-Link wireless无线通讯技术可实现更加轻量灵活的机器人协作 09-27 441 由于机械臂末端执行器方面的限制,许多应用都需要无线连接。无线连接使设计和外形尺寸更合理,而且无需考虑电缆,可实现连续旋转、更大的操作范围以及传感器和执行器的模块化部署等功能。它还能降低部署成本、维护成本(由于电缆磨损)和意外停机时间。 博客 虹科教您 | 可实现带宽计量和延迟计算的时间敏感网络测试工具RELY-TSN-LAB操作指南与基本功能测试 09-21 723 为了在这些网络中实现确定性,需要控制连接到网络的设备的延迟和带宽,并预测其在拥堵和错误情况下的行为。RELY-TSN-LAB是一种新概念的测试工具,可以在不同的测试条件下测量设备或TSN网段的延迟和带宽。 博客 TSN标准化与虹科组网测试方案:赋能多领域以太网新发展 09-20 181 TSN是一项面向未来的新兴技术,它定义了以太网数据传输的时间敏感机制,为标准以太网增加了确定性和可靠性,以确保数据实时、确定和可靠地传输,从而赋能多行业领域以太网的新发展。为加速推动TSN应用落地,了解TSN应用的优势和必要性,需要进行TSN组网测试。TSN组网测试需要深入了解TSN技术、设计网络拓扑、使用TSN交换机和测试仪器、使用TSN设备和应用程序、了解各种测试场景以及编写测试计划和测试报告等工作。 博客 虹科分享 | 使用工业无线方案的包装机械运输轨道系统将会是什么样子的? 08-16 145 无线通信对机器制造商的价值体现在机器生产、开发、交付、部署以及制造商工厂的持续性支持等多个阶段。设备本身也能从机器的无线连接中获益,如缩短更换时间、减少停机时间和维护时间、减少占地面积以及充分的灵活性和模块化。虹科愿与机器制造商、工业设备制造商(运输轨道制造商、传感器制造商、机械手/泵制造商等)和领先的制造工厂合作,为包装机械提供创新和独特的无线通信解决方案,如IO-Link Wireless解决方案。 “相关推荐”对你有帮助么? 非常没帮助 没帮助 一般 有帮助 非常有帮助 提交 虹科工业智能互联 CSDN认证博客专家 CSDN认证企业博客 190 原创 3万+ 周排名 7447 总排名 32万+ 访问 等级 3968 积分 549 粉丝 400 获赞 70 评论 1448 收藏 私信 关注 热门文章 Profinet协议基础知识(一) 14303 EtherNET/IP协议基础知识(上) 11219 虹科分享 | 简单实用的CANopen介绍,看完你就明白了(2)——CANopen框架与七种服务类型 10942 虹科分享 | 简单实用的CANopen介绍,看完你就明白了(1)——CANopen基础概念 9391 Profinet协议基础知识(二) 8647 分类专栏 TSN 37篇 IO-Link wireless 5篇 OPC 1篇 CANopen 9篇 IO Link 15篇 CAN总线 28篇 HSR/PRP 10篇 EtherCAT 12篇 虹科Automation softPLC 虹科Tele继电器 2篇 现场总线 13篇 PCAN工程机械应用系列 5篇 PCAN医疗应用系列 5篇 Linux远程桌面服务器 2篇 通讯测试 4篇 CIFX多协议主从站板卡 4篇 PROFINET 8篇 EtherNet/IP 7篇 CC-Link 1篇 NT151 5篇 INtime 3篇 DeviceNet 2篇 PROFIBUS 2篇 最新评论 虹科教您 | 在Windows环境下安装PCAN View及通讯测试指南 Harest: 怎么加载DBC呢? 虹科分享 | 独特的FRER机制:TSN如何确保网络的可靠性? 漫步汽车路: 讲的挺好 把我测试遇到的不懂的FRER格式解析了 这个有什么文档将报文格式吗??? 虹科教您 | 在Linux环境下安装PCAN View及通讯测试指南 明日见、: 第一个安装包有链接吗,在官网没找到 虹科分享 | 简单实用的CANopen介绍,看完你就明白了(2)——CANopen框架与七种服务类型 海阔天空o0: 讲解很清楚 虹科教您 | 可实现带宽计量和延迟计算的时间敏感网络测试工具RELY-TSN-LAB操作指南与基本功能测试 CSDN-Ada助手: 恭喜你这篇博客进入【CSDN月度精选】榜单,全部的排名请看 https://bbs.csdn.net/topics/617346504。 您愿意向朋友推荐“博客详情页”吗? 强烈不推荐 不推荐 一般般 推荐 强烈推荐 提交 最新文章 虹科技术|PTP时钟源设备全攻略:从普通时钟到透明时钟的进阶之路 虹科技术|一文详解IO-Link Wireless技术如何影响工业无线自动化 虹科技术|如何用TSN流识别技术破解航空电子网络的传输难题? 2024年4篇 2023年43篇 2022年42篇 2021年31篇 2020年71篇 目录 目录 分类专栏 TSN 37篇 IO-Link wireless 5篇 OPC 1篇 CANopen 9篇 IO Link 15篇 CAN总线 28篇 HSR/PRP 10篇 EtherCAT 12篇 虹科Automation softPLC 虹科Tele继电器 2篇 现场总线 13篇 PCAN工程机械应用系列 5篇 PCAN医疗应用系列 5篇 Linux远程桌面服务器 2篇 通讯测试 4篇 CIFX多协议主从站板卡 4篇 PROFINET 8篇 EtherNet/IP 7篇 CC-Link 1篇 NT151 5篇 INtime 3篇 DeviceNet 2篇 PROFIBUS 2篇 目录 评论 被折叠的 条评论 为什么被折叠? 到【灌水乐园】发言 查看更多评论 添加红包 祝福语 请填写红包祝福语或标题 红包数量 个 红包个数最小为10个 红包总金额 元 红包金额最低5元 余额支付 当前余额3.43元 前往充值 > 需支付:10.00元 取消 确定 下一步 知道了 成就一亿技术人! 领取后你会自动成为博主和红包主的粉丝 规则 hope_wisdom 发出的红包 实付元 使用余额支付 点击重新获取 扫码支付 钱包余额 0 抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 余额充值 EtherCAT Diagnostics 诊断 - 知乎首发于深入浅出之Beckhoff切换模式写文章登录/注册EtherCAT Diagnostics 诊断噜啦啦学而时习之,不易悦乎一、EtherCAT 错误是怎么检测到的?EtherCAT 通常具有“即扫即用”的特性,扫描网络、启动系统,所有组件就运行起来了。绝大多数情况下不需要设置任何参数。发现EtherCAT网络的通讯问题,典型的情况是因为以下原因:机器停止工作,或者控制项目 (PLC 程序, NC 任务…) 接收到的数据值明显与实测值不一致。示波器测到信号为True,而PLC变量值为False.在TwinCAT项目中显示了错误(典型的情况是在Master Online页面或者TwinCAT Logger)二、EtherCAT 网络中的错误类型能影响到EtherCAT网络的错误分为2大类:1.硬件错误物理介质中断:数据帧无法达到所有从站,或者根本不能回到主站。信息破坏: 数据帧到达网络中的所有从站并回到了主站,但有一些内容改变了。2.软件错误启动时从站达不到OP状态,因为来自主站的一个或多个初始化的命令被检测到不正确由于在操作过程中检测到错误,一个正常工作的从站突然脱离OP状态EtherCAT 分别从硬件和软件层面提供了丰富的诊断信息, 诊断信息可以按下图归类:三、周期性同步诊断周期性同步诊断 – Working CounterWorking Counter 是和过程数据(Process Data)一起的周期性送回主站的唯一诊断信息,所以这是最早能被主站和用户程序检测到的报警标记。一个EtherCAT数据帧中的每个数据报文都以一个16位的Working Counter (WKC)结尾,WKC 每经过一个数据报文中指定的从站就会递增,递增的原则如下:Read-only 命令(xRD): 如果从站内存可读,则 WKC+1.Write-only 命令(xWR): 如果从站内存可写,则 WKC+1.Read+Write 命令(xRW): 如果从站内存可读 WKC+1,可写则 WKC+2 (i.e. 如果读写都成功则 WKC+3).1.主站检查返回的每个数据报文的WKC值返回主站的数据报文中的WKC 当前值 = 预期值 →WKC 有效,数据报文中的输入数据转发给控制程序(PLC, NC, …)每个总线周期主站都会验证 Working Counter.返回主站的数据报文中的WKC 当前值 ≠ 预期值 →WKC 无效,数据报文中的输入数据被丢弃 (PLC/NC 使用旧的数据)本页是WKC验证有效的情况验证的结果就在每个同步单元Sync Unit的从站的WcState信息中标记,验证成功则WcState为0,验证失败则WcState为1这就是为什么一个同步单元Sync Unit会共享同一个WcState标记,而任一从站读写不成功都会导致整个数据报文都无效。读写不成功的原因:从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因。在最新版的TwinCAT 3.1中,可以把单个从站(左图)或者全部网络从站(右图)配置为:主站把 无效的输入数据全部置 0 而不是废弃之。这个功能更加危险,如果开发人员考虑不周,可能性会引起程序误动作。慎用!2.Working Counter 相关信息:很少能检测到具体是哪个或者哪些从站没有成功处理数据报文(数据报文中指定地址的从站没能成功增加数据报文的WKC)。不会报告错误原因(从站没有成功增加WKC,有可能因为物理上数据帧就没有到达,或者因为它不在OP状态,或者其它可能的原因)。WKC与数据帧同步到达,主站以最快的速度作出故障响应,立即向控制程序或者用户提供一个故障标记位。WKC的有效标记位通常还需要与硬件或者软件诊断信息同时使用,这些诊断信息可以 由主站发送命令读取回来,并帮助定位故障位置和故障原因。Working Counter 的主要目的是立即检测出通讯错误, (i.e. 为了主站快速做出反应), 而不是为了精准分析通讯错误四、Working Counter 和 Sync Units(WKC和同步单元)1.SyncUnits(同步单元) 把从站分为不同的组,每个组使用不同的数据报文,所以每个同步单元具有独立的 WKC。对于伺服驱动器,为了精确定位故障点,可以把每个伺服都设置为独立的同步单元。对于IO模块,可能把一个耦合器及所带的IO模块,配置为一个同步单元。为了优化的目的,Sync Unit 的配置是一个可选的步骤。关于如何分配同步单元,并没有一个黄金法则,因为这是由项目决定的:通常来讲,工作时紧密相关的从站应该分配到同一个同步单 元,而功能相对独立的从站应该放到独立的同步单元。2.在 TwinCAT中指定 SyncUnitTwinCAT为不同的Sync Units(同步单元)创建独立的数据报文,每个报文拥有自己 Working Counter 计数器五、硬件诊断1.硬件状态速览主站的 Online 页面,提供了诊断网络硬件问题的最佳方法系统上电时候可能产生硬件错误,并在TwinCAT中累加,而通常这些错误并不代表有问题。所以,查找可能的硬件问题时,建议清除程序启后的所有错误计数,这样才能监视到运行过程中 发生的实际错误次数。2.初步检查 – 拓朴错误VPRS = Vendor ID, Product Code, Revision Number, Serial Number: 网络启动时主站扫描到的拓朴结构与TwinCAT 配置文件的朴拓结构不符。此类错误的原因,可能只是简单地插错网线。3.初步检查 – 接地和屏蔽发生硬件错误时,建议必须检查EtherCAT网络设备是否共用同一个接地(因为不同接地之间的 环流可能导致数据损坏)。关于EtherCAT网络安装的更完整、全面的描述信息,请参考ETG文档 ETG.160 “EtherCAT Installation Guidelines” ,可以从ETG官网www.ethercat.org.下载。4.初步检查 – EBUS 电流每个 EL 模块都会消耗若干 EBUS 电流,硬件故障发生时,建议必须检查每个I/O组的可用Ebus电流。根据经验,EBUS耗电量大的模块,比如网关模块EL6xxx,在保证其EBUS供电足够的前提下,建议散放在耗电量小的模块( 比如普通DI/DO模块)之间,所以尽量不要几个网关模块挨在一起,也不要紧挨着控制器或者耦合器放置。这是从散热的角度考虑。电流消耗达到限值时,应插入一个 EL94xx 模块。EL9100电源模块不仅可以接入负载电源,还有散热的作用,是最便宜的发热量最小并且能传递EBUS的模块。相同价格的还有EL9186/EL9187等电位分接模块。5.Emergency Scan(紧急扫描)Emergency Scan (紧急扫描)操作,可以发送预定数量的探测数据帧,用于快速测试物理连接 (TwinCAT 应处在 Config Mode):Emergency Scan 能够快速检查EtherCAT网络的永久硬件问题 (设备、电缆或者接头损坏)。用Emergency Scan的方法很难检测到随机的/不定时的干扰,处理这种干扰,应该进行完整的error counter analysis (错误计数分析)。6.EtherCAT 端口的硬件诊断为了进行更深入的分析,从站提供了基于端口的(port-specific)硬件错误计数。EtherCAT 定义了端口号 0 to 3 (端口 0 总是输入口),而TwinCAT 中通常把这些端口依次叫做A 到 D (A 总是输入口),两种端口定义方式是等效的:Master的Online页面,可以在线看到CRC校验错误计数。大部分从站是两个数字,耦合器EK1100有3个数字,而分支模块EK1122则会有4个数字。7.Link Lost (连接丢失)错误计数器有时候两个EtherCAT从站之间的物理连接可能会完全中断:信号完全无法到达相邻的从站。Link loss(连接丢失),最有可能的原因是:电缆或接头损坏(电缆连接),接触弹片不够力或者氧化( Ebus连接)。一个或者几个从站掉电。一个端口上的物理连接中断,从站就会把该端口的 Link Lost Counter(连接丢失计数器) 加 1。Register 内存地址长度含 义0x03101 字节port 0 的连接丢失次数0x03111 字节port 1 的连接丢失次数0x03121 字节port 2 的连接丢失次数0x03131 字节port 3 的连接丢失次数物理连接的状态发生久性或暂时性的改变,在TwinCATLogger消息区中都会报告(并且保存在Windows Log 中)。8.Link/Activity (连接/活动)指示灯连接的永久中断很容易检查出来,不用分析连接丢失计数器( Link Lost Counters ),只需要简单查看主站的Online页面:9.无效帧(Invalid frame)错误计数器有时候,即使硬件信号到达了相邻的从站,接收到的信号却与最初发送的不一致:数据包发生损坏,最有可能的原因是:如果该错误计数零星增加,极可能是由于外部 EMC 干扰。如果该错误计数快速且稳步增加,极可能是由于设备损坏。一个端口上的数据帧破坏,从站就会把该端口的 InvalidFrameCounter(无效帧计数器)加 1。RX 错误计数器 和 CRC 校验错误计数器,都意味着硬件接收到的数据帧损坏,表征信息非常相近,但是二者分别是在从站架构的不同层面检测到的,其含义也略有不同。10.物理介质上的信号传输0和1的逻辑序列要在物理介质上传输,需要编码成预定义的电压/电流 电平(或者电平转换)。电流/电压 值的序列叫做 symbols(符号).基于特定的硬件编码标准,电流/电压值的可能序列并不是全都具有含义,这样就有了 有效符号和无效符号的分别。物理介质上符号是连续传输的,既在Ethernet数据帧内也在数据帧外(数据帧外的符号序列是为了让接收方及时检测到可能发生的连接丢失错误)通讯由符号序列组成携带着有含义的信息的符号序列,就是Ethernet 数据帧。两个Ethernet数据帧之间传输的符号序列,就是 数据帧间隔硬件错误分为两种类型,都在无效帧计数器中累计。RX Errors:个别符号错误 (被特定的硬件解码器识别为无效).在数据帧内部或者外部都可能发生(即使是在没有数据帧传输的时候,每个物理接口都会传输 idle 即表示空闲的符号)→ RX Error Counters (无效帧计数器的高字节)CRC Errors:整个数据帧的循环冗余校验(CRC)错误.在数据帧内发生 (只有Ethernet 数据帧才进行校验).→ CRC Error Counters (无效帧计数器的低字节)11.RX 和 CRC 错误的类比硬件通讯介质上的数据传输可以用标准的语言书写来打个比方:RX 和 CRC 错误 在解释上具有细微的差别,例如:CRC校验只检查数据帧(Frame)内语义是否正常,但并不能发现网络帧间隔的非法字符。RX校验所有字符是否非法。CRC 错误 – 什么情况下会检测出来?12.链接丢失(Lost Link)错误的简单监视在EtherCAT主站的Online页面可以监视到链接丢失(Link Lost)只要在主站的Advanced Setting中启用累加计数“Show Change Counters”即可:添加这些操作是不需要重启TwinCAT软件的此计数表示与从站的物理连接丢失的次数(1表示首次连接,>1表示在运行期间至少出现过1次 物理连接丢失)。在EtherCAT主站的Online页面可以监视到数据帧错误(Frame error)即从站的RX Error计数寄存器的低字节,错误计数如下:从站的Frame Error计数器中保存着自TwinCAT启动以来的累计出错次数,点击“Clear CRC”所有从站的CRC计数清零,并重新累计。13.怎样正确跟踪硬件错误计数为了追踪硬件错误计数,建议进行以下设置:在主站的Advanced Setting中 不要勾选 “Log CRC Counters” 标记。在Online视图中添加注册字 0x0300÷0x030A 和 0x0310÷0x0312。激活并重启 TwinCAT 配置:重启TwinCAT后,清空所有错误计数:TwinCAT 中,EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值。等待,直到错误补检测到:捕捉到的错误次数越多越好 (关闭项目或者重启TwinCAT就会清除计数,而最小化项目或者切换窗口则不会清除计数). 记录的值可以导出,以供进一步分析。错误计数采集完成后,记得应把 “Log CRC Counters” 重新勾选上。(TwinCAT 需要重启).14.怎样定位一个错误?为了从显示的CRC错误计数分析出网络中的故障点分布情况,建议:逻辑上沿着网络数据帧传播的方向确定从站端口执行CRC校验的顺序(根据 前述信息 previous information):根据前面确定的顺序检测第一个报告RX Error Counter >0 的端口:在网络中定位第一个报告RX Error的故障点:报告无效错误计数器不为零的第一个端口 → 极有可能就是故障点。15.在故障点采取什么措施?在上页定位到故障点 previously located 后,应进行以下操作 :检查与上个从站之间的连接电缆:EtherCAT网线的走向是否靠近电源线或者干扰源?是否自制电缆的接头做工很差?电缆的屏蔽层是否接地良好?检查故障点的站和前一个从站:是否供电不足 (供给本站的电流太小, 例如:EBUS 电流)?两个从站的接地点不是等电位?试着替换该从站和前一个从站,或者交换二者的顺序,以查看错误是跟随某个从站还 是出现在原先的位置。对于 EMC 干扰, 应该会导致 RX 和 CRC 错误都有增加 (即使二者增加的机率可能不同), 因为外部干扰不可能与通讯同步,于是在Ethernet 数据帧内部和外部都会破坏数据。完全不平衡的计数值 (RX错误很多,而没有CRC错误,或者很CRC错误而没有RX错误)可能意味着其中一个从站的内部硬件错误。16.深入了解 - CRC 错误的转发机制部分从站还额外支持 转发CRC错误计数器(Forwarded CRC Error Counters): 第1个检查出CRC错误的从站,其CRC 错误计数器(Register 0x0300)增加,第2个及之后再检查出CRC错误的从站则增加其转发CRC错误计数器(Register 0x0308)而CRC 错误计数器保持不变。并非所有从站都支持 转发CRC错误计数器(Forwarded CRC Error Counters) 功能 (该特性为可选项) ,所以该计数应视为补充信息: 有助于定位出错的第1个设备,但不是关键指标。17.深入了解 – 转发CRC错误的计数器TwinCAT 中, EtherCAT主站的 Online 页面总是以 word-oriented 的方式显示计数值,所以转发CRC错误计数器( Forwarded CRC Error Counter )的说明如下:18.主站错误计数此外,EtherCAT 主站 也提供硬件错误 计数:EtherCAT 主站支持两种不同的错误计数器 :Rx Errors: 与从站侧的 RX 错误计数器类似,由网卡统计符号错误的次数 (发生在数据帧内和数据帧外的错误).Lost 数据帧: 由于EtherCAT闭环在某处中断未能返回主站的数据帧和返回了但CRC校验错误的数据帧 TwinCAT 都视作丢失的“lost“。在TwinCAT中,如果丢失一个数据帧,则该数据帧包含的所有数据报文(Datagram,即Sync Unit同步单元)都会报Working Counter 错误,显示为所有从站的WcState为Invalid。分别考虑不同的数据帧类型:Cyclic: 周期性数据帧 发送要交换的过程数据( Process Data):Queued: 排队等候的数据帧,包括所有非周期性的数据帧: 邮箱 Mailbox, 状态机 State Machine, 注册字访问 Register access19.在线查看拓扑结构大部分硬件诊断信息,可以在 Topology View 界面监视Topology View 是个 ActiveX 插件,可以导出到任何独立于TwinCAT 开发环境的 Windows 应用。六、Software Diagnostics 软件诊断1.软件层面的错误 – EtherCAT 状态机软件层面的诊断信息,通常与EtherCAT 状态机操作有关: 一旦从站不能按主站要求进入正确的状态, 就会在从站的注册字(Register 0x0134)中报告AL状态代码(AL Status Code)。在 TwinCAT Logger 中也会显示状态机错误:TwinCAT 默认总是试图清除状态机错误,并且把所有从站切回OP状态。此时, 要在主站的Advanced Settings中取消选中该标记。2.状态机切换异常( Unexpected State Transitions )的简单监视在EtherCAT主站的Online页面可以监视从站状态机异常切换的次数,只要在主站的Advanced Setting中启用该计数即可显示:此计数表示与从站的状态机切换异常的次数(1表示首次切换,>1表示在运行期间至少出现过1 次状态切换异常)。3.EtherCAT 状态机错误的类型EtherCAT 状态机错误可以归为2个大类:初始化错误 (启动时从站不能进入OP状态): 状态机切换过程中,主站根据 ESI 文件的内容向从站发送初始化命令. 如果从站检测到一个或者几个 start-up 参数无效,就会拒绝相应的状态机切换。典型 的初始化错误:此时 Register 0x0134 的值显示为:0x0003 : Invalid Device Setup (BK1xxx上配置的KL模块顺序不正确)0x001D : Invalid Output Configuration (配置的输出过程数据无效)0x001E : Invalid Input Configuration (配置的输入过程数据无效)0x0035 : Invalid Sync Cycle Time (在 DC 模式中设置的Cycle Time不支持)运行时错误 (从站退出OP到更低级的状态): 配置正确的从站成功进入OP状态以后,在运行过程中检测到错误,并因此执行切换到更低级的状态。典型的运行时错误:此时 Register 0x0134 的值显示为:0x001A : Synchronization error (网络的抖动导致从站的同步丢失)0x001B : Sync manager watchdog (从站未接收到周期性数据的时间,持续超过了watchdog时间)0x002C : Fatal SYNC error (ESC 再未收到 SYNC 硬件中断)4.发生初始化错误 – 怎么办?从站的 ESI 文件应包含TwinCAT在网络中正确配置该从站所需要的全部信息。如果使用从ESI读取的默认设置来激活配置 (而不做任何手动修改), 从站应该能进入OP状态而不报错。如果发生了初始化错误:确保 ESI 文件复制到了 包含所有从站描述文件的TwinCAT统一路径(ESI 文件中的ProductCode 和 Revision Number 与CoE对象 0x1018 中显示的信息相匹配)。检查从站的默认设置是否改动过,如果改过就删除该从站再在TwinCAT配置中手动添加。(以恢复默认设置)对模块化的从站(For modular slaves) ,检查“Slots” 页面配置的模块与实际连接的模块在型号、数量、顺序上是否严格一致。对具有分布时钟同步功能的从站设备(For DC-Synchronous devices),检查主站的Jitter或者Sync Shift Time的设置是否会妨碍从站正确实现DC同步。如果是这种情况 ,只是检查并不能解决问题,必须联系从站的制造商。5.发生运行时错误 – 怎么办?从站成功进入OP状态以后,在运行时不会无故退出OP状态。如果发生了运行时错误:如果从站发生了 watchdog 错误,检查TwinCAT 软件任务 (PLC 程序, NC 任务, …)是否正确运行,因为在TwinCAT中总是由上述任务触发数据帧的周期性发送和接收。检查主站设备的Jitter表现(抖动范围)是否能证明发生了同步丢失。(最大的Jitter超过通讯周期的20-30%时,很容易发生同步错误)。检查是否发生了硬件错误,比如物理连接丢失,这种错误可能间接导致Watchdog动作,或 者同步丢失 ( 参考“物理层问题的硬件诊断 ”)。如果是这种情况 ,只是检查并不能解决问题,使用 Wireshark 进行追踪会是个有用的办法。6.保存和导出软件错误状态机错误保存在 Windows Log 中,可以导出,以便在即使TwinCAT Logger已经关闭或者不可用的时候,还可以进一步分析:7.历史诊断信息(Diagnose History Object)对于所有应用相关的错误,部分 CoE从站设备支持“历史诊断信息”功能 (Diagnosis History Object ) Register 0x10F3.如果从站支持该功能,TwinCAT 就会额外显示一个页面 “Diag History” :8.邮箱协议错误(Mailbox Protocol Errors)邮箱协议错误( Mailbox protocol errors )是一个指定类的一般性软件错误,它不是厂家自定义的,不影响 EtherCAT 状态机,不会阻止也不会导致意外的状态切换。仅当执行某个特定的邮箱协议所禁止的动作时,才会发生邮箱协议错误。在 ETG.1000.6 规范中,公布了每个邮箱协议支持的错误代码及描述信息。9.发生了邮箱协议错误(Mailbox Protocol Errors )– 怎么办?根据特定的邮箱协议,可能的错误原因是:•CoE-主站试图读写从站的对象字典(Object Dictionary)中并不存在的对象-主站试图对从站的某个“只读” 对象执行“写入”操作。-主站试图以“完全访问”的方式访问从站的某个对象,而从站并不支持该功能。•FoE-文件名错误 (例如, 缺少扩展名*.xxx).-从站需要密码, 但未被正确设置-文件大小超出了从站能接受的范围-从站不在 Bootstrap 状态•EoE-主站试图把从站的 IP-Add(Internal Use)ress 配置为末位为0的值(比如“x.y.z.0”),而EoE从站的Tcp/Ip 协议栈拒绝此设置。注意:•TwinCAT 仅在以下时段 读/写 CoE 参数: -在初始化阶段(Startup 命令) -CoE-Online 页面打开时•如果错误信息显示TwinCAT试图间歇性地读写CoE参数,很可能这是PLC程序的动作。七、TwinCAT PLC 中编写EtherCAT 诊断程序1.在PLC程序中系统地诊断 EtherCAT 状态对于EtherCAT 网络, TwinCAT 自动提供了大量诊断信息,可以在PLC程序中用于检测总线通讯的错误, 以便自动做出响应并报告给用户。用户总是倾向于在PLC程序中实现最少的EtherCAT诊断,因为这样有助于通讯错误发生时节约大量的操作时间。TwinCAT PLC 程序可以混合使用 2 种不同的诊断信息 :周期性信息 : 默认包含在EtherCAT网络的周期性过程映像数据中的 输入数据, 可以直接映射到相应的PLC输入变量 (AT %I*).非周期性信息 : PLC程序调用默认库文件(TcEtherCAT.lib)中指定的功能块,可以获取这些非周期性的EtherCAT诊断信息 。2.TwinCAT 中的周期性诊断信息注意:至少所有从站的 WcState 和 State 变量应链接到 PLC 程序,以便应用程序可以对 EtherCAT 进行最基本的诊断。3.周期性信息 - FrmXWcState 变量允许 PLC 检查每个报文的 Working Counter 信息:每个配置的Frame都具有一个16位的诊断变量 FrmXWcStateFrmXWcState 的每个位对应Frame中的特定报文如果对应报文的Working Counter错误,这个位就会变为TRUE4.周期性信息 - WcState 变量这是每个从站的过程数据中都具有一个布尔型变量如果报文的Working Counter 错误,报文中所有从站的WcState 变量都会被置位,所以,如果一个从站的 WcState = 1, 也并不表示它本身发生了错误。 (内部使用) 进一步的信息需要查看这些 WcState 为 1 的从站的16位状态变量 State5.周期性信息 - State 变量EtherCAT Master汇总从网络收集的诊断信息,周期性地更新State变量,对应几种错误情况:6.周期性信息 – State 变量状态变量报告的错误诊断信息如下:7.非周期性信息 – TcEtherCAT PLC Library在TC2和TC3的默认安装中都免费提供TcEtherCAT.lib库, 该库包含若干功能块,可以对EtherCAT网络进行非周期 性诊断Frame 分析CRC 分析从站识别配置从站的数量和列表实际从站的数量和列表该库原则上允许PLC程序自动读取在TwinCAT开发环境中 在线显示的所有信息。功能块FB_EcGetSlaveTopologyInfo功能块FB_EcGetSlaveTopologyInfo返回关于不同从站的端口如何相互连接的信息,以及(配置的)网络拓扑结 构的信息,(如果配置了热连接组,则它们将列在阵列的末尾)。功能块FB_EcGetConfSlaves功能块 TwinCAT 离线配置,知道 EtherCAT 网络包含哪些从站。功能块 FB_ecgetscannedsaves功能块 FB_ecgetscannedsaves 使 PLC 可 以 获 取EtherCAT网络在线检测的实际从站信息,以便和使用FB_EcGetConfSlaves 获得的离线配置的从站信息进行比较。功能块 FB_ecgetscannedsaves功能块FB_ecgetallslavercerrors可以周期性调用,以判断一个或多个从站是否报告CRC错误。这样就可以只对 这些出错的从站调用FB_ecgetslavecercerrorex,以获取进一步的故障信息。功能块FB_ecgetslavecercerrorex功能块 FB_ecgetslavecercerrorex 使 PLC 可 以 获 取EtherCAT主站记录的特定从站的CRC错误信息,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcMasterFrameStatistics功能块 FB_EcMasterFrameStatistics 使PLC可以获取EtherCAT主站检测到的Frame丢失等情况,这些信息与TwinCAT 开发环境中的 EtherCAT 监视界面显示的信息一致。功能块FB_EcGetAllSlaveAbnormalStateChanges功能块FB_EcGetAllSlaveAbnormalStateChanges,统计每个从站 从 OP 退至 SafeOP 的异常状态切换,但并不报告每次异常切换时相关的特定AL 状态码。功能块FB_EcGetLastProtErrInfo功能块 FB_EcGetLastProtErrInfo 允许覆盖上一次邮箱协议错误 Mailbox protocol error (例如, CoE协议的SDO退出代码).对同一从站的下一次正确邮箱访问会清除此前记录错误信息的内存区。八、附件:使用 Wireshark 进行诊断1.如果软件诊断还不够 – 使用 WiresharkWireshark 并不是用以取代TwinCAT中的诊断功能 。对于用户来说,应当在使用了其它诊断方法都无法找到故障点的时候,才使用这个“终极武器”。使用ET2000 可以在Wireshark中获得最好的捕捉效果为了执行 Wireshark 抓包,有多种不同的硬件配置。2.Wireshark 抓包的硬件配置 1不支持 Windows CE没有精确的时间戳3.Wireshark 抓包的硬件配置 2不支持 Windows CE有精确的时间戳4.Wireshark 抓包的硬件配置 3支持 Windows CE有精确的时间戳5.Wireshark 示例Wireshark 允许追踪每个 EtherCAT 数据帧的 list, structure and content of (在一轮捕捉过程中,每个数据帧会被捕获两次!).下图显示了捕获的一个周期性数据帧:6.Wireshark – 时间戳协议( 仅当使用ET2000时 )使用ET2000时,为了在Wireshark中获取到极为精确的时间戳(time-stamping)信息, 应当启用对ESL协议的解析功能。Wireshark Version 2 支持此功能。7.Wireshark – 时间戳协议( 仅当使用ET2000时 )…在早期的 Wireshark Version 1中操作如下:8.Wireshark – 显示时间的格式使用Wireshark追踪时,用户可以选择最合适的 时间信息 显示格式:9.Wireshark – 部分过滤选项(Filter Options)捕获的数据帧可以使用过滤功能,可用的过滤选项包括:仅捕获周期性数据帧(Cyclic Frame)Filter: (ecat.cmd == 0x0a) || (ecat.cmd == 0x0b) || (ecat.cmd == 0x0c)仅捕获邮箱通讯(mailbox communication)Filter: ecat_mailbox Filter: ecat_mailbox.coe Filter: ecat_mailbox.soe Filter: ecat_mailbox.foe Filter: ecat_mailbox.eoe仅访问特定的注册字或者注册字区间 (register or register range)Filter: ecat.ado == 编程控制EtherCAT通讯重启: · AM600应用笔记 燕骏博客 1.1. AM600 1.2. 一、InoProShop编程软件 1.2.1. USB连接 1.2.2. 如何辨别InoProShop扫描选择的设备是哪台PLC 1.2.3. InoProShop写入PLC时间 1.2.4. InoProShop固件升级 1.2.5. 掉电数据保存 1.2.6. 程序实际无错误却报编译错误的解决方法 1.2.7. 持久性变量 1.2.8. 源上传、工程存档不支持工程中文名 1.2.9. 工程备份文件 1.2.10. 监控中提示如下信息注意事项: 1.2.11. 编辑器常用功能设置: 1.2.12. 高速输出偏置速度设置: 1.2.13. 变量类型string: 1.2.14. 后台提示遇到问题需要关闭: 1.2.15. 指令读写系统时间: 1.2.16. 连续地址操作: 1.2.17. 窗口太多导致后台经常卡死 1.2.18. InoPro复制粘贴代码时卡 1.2.19. 强制值写入注意点 1.2.20. AM600故障诊断指令注意事项 1.2.21. 自定义结构体分配地址: 1.2.22. 任务抢占 1.2.23. 模拟量比例转换: 1.2.24. PID指令: 1.2.25. 变量赋初值: 1.2.26. 加速模式使用二次方、二次方(平滑): 1.2.27. 高速IO接线注意事项 1.2.28. 高速IO原点回归重试问题 1.2.29. AM600后台安全管理与用户权限的设置方法 1.2.30. IO映射注意事项 1.2.31. InoProShop提示“System.OutOfMemoryException”、“未定义的标识符” 1.2.32. InoProShop提示“ Invalid Control Panel” 1.2.33. InoProShop提示 “Index 11 is out of range” 1.2.34. InoProShop打开时报错“框架实现化失败” 1.2.35. InoProShop软件网关出现异常的处理办法 1.2.36. InoProShop内存溢出 1.2.37. 读写文件函数 1.2.38. 自定义库 1.2.39. 上下电时输入输出 1.2.40. 后台使用细节 1.2.41. 高速IO偏置速度: 1.2.42. 网络变量使用方法 1.2.43. 配方使用 1.2.44. AM600与codesys opc server通讯并建立OPCserver的方法 1.3. 二、 SFC应用: 1.3.1. SFC应用: 1.3.2. AM600与H2u SFC应用规则差异-OUT输出: 1.3.3. AM600与H2u SFC应用规则差异-步转移周期: 1.3.4. AM600 SFC隐含变量: 1.4. 三、 LD应用: 1.4.1. LD快捷键设置: 1.4.2. LD常用功能: 1.4.3. LD提示网络绘制错误处理办法: 1.5. 四、 总线运动控制: 1.5.1. EtherCAT通讯问题现场应用指导 1.5.2. EtherCAT任务使用注意事项 1.5.3. EtherCAT主站配置注意事项 1.5.4. EtherCAT的IO映射使用注意事项: 1.5.5. 如何更新EtherCAT从站设备: 1.5.6. 更改轴配置参数 1.5.7. 轴类型(模数轴和限定轴) 1.5.8. 如何修改伺服编码器值: 1.5.9. 轴加减速类型(梯形,Sin2,二次方,二次方平滑) 1.5.10. 轴错误定位和错误清除: 1.5.11. 检测EherCAT通讯状态: 1.5.12. 编程控制EtherCAT通讯重启: 1.5.13. 总线运动控制复位封装库 1.5.14. EtherCAT从站地址设置方法 1.5.15. EtherCAT网络配置与实际连接不一致时如何运行 1.5.16. EtherCat通信从站设备数据访问方法 1.5.17. 如何降低CPU使用率 1.5.18. PLCopen功能块调用问题 1.5.19. 时序问题导致MC_MoveSuperImposed运动叠加异常 1.5.20. MC_MoveSuperImposed与MC_MoveAdditive 1.5.21. MC_STOP与MC_halt: 1.5.22. SMC_HOMING控制器回零、MC_HOME伺服回零: 1.5.23. MC_Jog指令问题 1.5.24. MC_Power指令使用方式 1.5.25. 总线运动控制相关参数 1.5.26. 总线运动控制触发信号Execute 1.5.27. 探针功能 1.5.28. 电子齿轮 1.5.29. EtherCAT控制伺服匀速运行,电机抖动又没报错的问题: 1.5.30. AM600总线运动控制程序编写要求 1.5.31. 伺服报错err.e15 1.5.32. 转矩模式下遇到限位如何处理 1.5.33. 怎样保证多圈绝对式编码器位置信息掉电保存 1.5.34. AM600 配合绝对值带旋转周期功能轴实际位置反馈异常问题分析 1.5.35. AM600配合绝对值电机使用注意事项 1.5.36. 凸轮 1.5.37. CNC Published with GitBook 编程控制EtherCAT通讯重启: 编程控制EtherCAT通讯重启: EtherCAT通讯可以通过编程控制,所有EtherCAT通讯配置参数都可以用变量获取和设置。 1、后台配置实现 主站参数设置中勾选自动重启从站,如果从站掉站(如拔掉主站与第一个从站的网线,所有从站掉线,再重新插上)通讯会自动重启从站。这种重启方式只对所有从站掉站或者说通讯报错误时有用(xError=TRUE)。 这种方式重启后,如果有伺服轴,轴的状态还是会报通讯错误(1100),需用SMC3_ReinitDrive指令重新初始化。有伺服轴一般认为有DC时钟,用DC时钟同步上升沿触发使能该指令(ETHERCAT.xDistributedClockInSync),如下图。 2、编写用户程序实现 1)控制单个从站状态 从站状态可能为0、(1)初始化、(2)预运行、(4)安全运行、(8)运行,AM600如何通过程序控制从站状态呢? 可以修改属性SetOpMode的值控制从站状态。 定义: VAR wSlaveState: WORD:=8; //wSlaveState初始值设置为8 bSetSlaveOPmode: BOOL; //用户定义变量,设置为TRUE,从站状态不为OP则重启从站,注意在整个网络重启时不能为TRUE。 END_VAR 编程://从站状态控制 CASE wSlaveState OF 1: IoConfig_Globals._IS620N.SetOpMode(wOpMode:= 2); wSlaveState:=2; 2: IF IoConfig_Globals._IS620N.wState=2 THEN wSlaveState:=3; END_IF 3: IoConfig_Globals._IS620N.SetOpMode(wOpMode:= 1); wSlaveState:=4; 4: IF IoConfig_Globals._IS620N.wState=1 THEN wSlaveState:=5; END_IF 5: IoConfig_Globals._IS620N.SetOpMode(wOpMode:= 2); wSlaveState:=6; 6: IF IoConfig_Globals._IS620N.wState=2 THEN wSlaveState:=7; END_IF 7: IoConfig_Globals._IS620N.SetOpMode(wOpMode:=4); wSlaveState:=8; 8: IF IoConfig_Globals._IS620N.wState=4 THEN wSlaveState:=9; END_IF 9: IoConfig_Globals._IS620N.SetOpMode(wOpMode:= 8); wSlaveState:=10; 10: IF IoConfig_Globals._IS620N.wState=8 THEN ; Else 故障无法复位; END_IF END_CASE EtherCAT通讯某个别从站通讯故障可能不会导致整个通讯报错,只是对应从站不为运行状态,这就可以通过上面的方法重启对应从站。 如果重启伺服轴,需要SMC3_ReinitDrive指令初始化轴。 PS:不能在PLC系统初始化时调用该段程序,会导致PLC卡死 2)重启整个网络 如果后台没有勾选自动重启从站或者需要用户判断是否重启网络,此时用指令IoDrvEtherCAT控制实现。 xRestart:重启整个网络,注意需用上升沿,如果是电平总线会一直发重启命令无法完成重启运行。 Xstopbus:停止总线电平有效,为true时总线一直处于停止状态。 注意:IoDrvEtherCAT实例化名称必须用主站名称,如下图为EtherCAT。 通讯重启完成后要用PLCopen控制伺服轴还必须用SMC3_ReinitDrive指令初始化 //等待DC时钟同步有效信号,初始化轴 IF ETHERCAT.xConfigFinished AND ETHERCAT.xDistributedClockInSync THEN SMC3_ReinitDrive_Axis0( Axis:= Axis0, bExecute:= TRUE, bVirtual:= , bDone=> , bBusy=> , bError=> , nErrorID=> ); IF SMC3_ReinitDrive_Axis0.bDone THEN bEtcReset:=FALSE; END_IF END_IF 注意什么时候重启从站呢?需要用户自己判断,比如主站参数xError=TRUE时、比如从站状态不在运行状态时。 PS:帮助文档,EtherCAT配置编辑器中有详细介绍 Copyright © www.yanjuntech.cn 2018-2025 all right reserved,powered by Gitbook该文件修订时间: 2018-10-21 17:29:45 results matching "" No results matching "" 维护工程师指导手册: EtherCAT诊断 | 倍福虚拟学院 跳到主要内容 跳过 目录目录1. 前言2. 确认型号2.1. 控制器产品2.2. 总线IO产品2.3. 驱动产品3. 故障诊断3.1. CX5130控制器诊断3.2. C69产品诊断3.3. CP62产品诊断3.4. 总线IO产品诊断3.5. EtherCAT诊断3.6. 驱动器产品诊断3.7. AX5000驱动器诊断3.8. TwinSAFE产品诊断4. 换硬件4.1. 即插即用产品更换4.2. 更换需参数配置的产品4.3. 换控制器4.4. 换控制器配件4.5. 换驱动产品5. 使用须知5.1. EMC基础知识跳过 全站搜索全站搜索 搜索 搜索 跳过 导航导航首页网站页面我的课程我的课程课程开学第一课公司介绍资料集中营产品安装和接线及EMC设计规范电源计算及简明安装★CX控制器的安装和接线★IO模块的拆装★驱动产品接线★IPC 的拆装和接线★总线接头的安装★★维护工程师必读维护工程师指导手册他山之石★★★EMC设计规范Beckhoff技术常见问答常规培训DEMO简介陈老师课程专区TwinCAT 3TF6xxx function工业PC总线IO运动控制人机界面ADS通讯安全方案人工智能TwinCAT 2测试 产品安装和接线及EMC设计规范 停靠面板 Course search 关闭 Course search 切换搜索输入 登录 MVP计划倍福中国 MVP计划致谢2023年度MVP技术支持虚拟学院使用指南微信技术支持使用指南 全屏 标准视图 MVP计划 折叠 展开 倍福中国 MVP计划 致谢2023年度MVP 技术支持 折叠 展开 虚拟学院使用指南 微信技术支持使用指南 打开课程索引 打开块抽屉 课程开学第一课产品安装和接线及EMC设计规范维护工程师必读维护工程师指导手册 更多 维护工程师指导手册 完成条件 3. 故障诊断3.5. EtherCAT诊断耦合器EK1100EK1100 耦合器用于EtherCAT 网络与 EtherCAT 端子 (ELxxxx) 相连,一个站由一个 EK1100 耦合器、任意多个 EtherCAT 端子端子组成。该耦合器把 100baseTX 以太网的传递介质转换为E-BUS总线信号。耦合器通过上面的以太网接口与上层EtherCAT网络相连,下面的 RJ 45 接口可用于同一网络上连接其它 EtherCAT 设备。1. EK1100指示灯介绍2. 网口指示灯3.故障检测1)设备正常运行下EK1100模块亮灯情况2)故障查看流程:故障1:EK1100后面的负载均没有动作,但是后面输入模块指示灯亮,输出模块指示灯不亮第一步:检查EK1100模块网口灯(LINK/ACT X1)是否闪烁,如果不闪烁,说明EK1100和前面的EtherCAT设备没有连接。建议查看前面的EtherCAT设备是否存在故障;如果前面设备没有故障,建议查看EK1100模块和前面EtherCAT设备连接的RJ45网线是否存在故障。如果EK1100上面网口灯闪烁,建议看步骤二。第二步:查看Us指示灯,如果Us指示灯不亮,建议检查EK1100模块上1,5号管脚DC24V供电以及检查供电电缆,建议维护工程师用万用表测量1,5管脚之间的电压范围是否在24 VDC (-15%/+20%)之间。如故障还未解决,建议更换EK1100模块(参考手册3.4章节)。如果Us指示灯常亮,建议看步骤三。第三步:查看E-BUS指示灯,如果E-BUS指示灯不亮,建议检查EK1100模块和紧挨着EK1100的模块之间的连接,断电重新插拔EK1100和紧挨着EK1100的模块。如故障还未解决,建议更换EK1100模块或者是紧挨着EK1100的模块(参考手册3.4章节)。如果E-BUS指示灯常亮,建议看步骤四。第四步:查看RUN指示灯,RUN指示灯是常亮或者是不亮的话,建议更换EK1100模块(参考手册3.4章节)。故障二:EK1100后面的负载均没有动作,但是后面输入模块指示灯不亮,输出模块指示灯亮一般这个故障是Up供电断开,检查EK1100模块上2,3号管脚DC24V供电以及检查供电电缆,建议维护工程师用万用表测量2,3管脚之间的电压范围是否在24 VDC (-15%/+20%)之间。如故障还未解决,建议更换EK1100模块(参考手册3.4章节)故障三:EK1100模块后面的一个或者多个EL模块出现异常,但是EK1100模块指示灯闪烁正常第一步:建议查看整个EtherCAT网络,看是否出现有某个或者多个EtherCAT从站报错,如果整个网络中所有从站都正常,建议看步骤二。第二步:定位EK1100模块后面故障模块的位置,建议依次替换,查找故障模块,具体看下面详解。数字量输入输出模块本节以EL1008和EL2008为例,讲解输入输出模块诊断EL1008模块EL1008模块是输入模块,上面的LED指示灯用于显示外部信号输入状态。指示灯说明故障查看流程:故障一:EL1008模块的所有信号指示灯都不亮第一步:查看EK1100诊断指示灯,如果EK1100诊断灯不正常,建议参考EK1100模块的故障排查,反之,建议查看步骤二。第二步:建议用万用表测量第三方的设备,确认第三方设备是否出现故障。如果检测下来第三方设备正常,建议查看步骤三。第三步:建议替换EL1008模块,如果替换了EL1008模块之后,问题还是没有解决,可以考虑替换EL1008模块前面的EL模块。故障二:EL1008模块上某个信号指示灯不亮,其他EL模块运行正常第一步:建议用万用表测量第三方的设备,确认第三方设备是否出现故障。如果检测下来第三方设备正常,建议查看步骤二。第二步:建议单独EL1008模块上有问题的输入点接入DC24V电源,看信号指示灯是否常亮。如果不亮的话,建议替换EL1008模块,如果亮的话,建议查看外部接线,是否存在断路现象。故障三:EL1008模块上的信号指示灯常亮,后面的EL模块运行不正常第一步:查看EK1100诊断指示灯,如果EK1100诊断灯不正常,建议参考EK1100模块的故障排查,反之,建议查看步骤二。第二步:建议替换EL1008模块,如果替换了EL1008模块之后,问题还是没有解决,可以考虑替换EL1008模块前面的EL模块。EL2008模块EL2008模块是输出模块,上面的LED指示灯用于显示外部信号输出状态。指示灯说明故障查询流程:故障一:EL2008模块上所接的某个或者多个负载不动作,其他EL模块运行正常第一步:把负载拆除,用万用表测量输出点和0V之间是否存在DC24V电压,如果有DC24V,说明EL2008模块上的输出点有问题,建议替换EL2008模块。反之,看步骤二。第二步:测试负载,看第三方的负载是否正常,如果不正常的话,建议换第三方负载。反之,建议查看外部接线,是否存在断路或者短路现象。故障二:EL2008模块上所有输出点不输出,后面的EL模块运行不正常第一步:查看EK1100诊断指示灯,如果EK1100诊断灯不正常,建议参考EK1100模块的故障排查,反之,建议查看步骤二。第二步:建议替换EL2008模块,如果替换了EL2008模块之后,问题还是没有解决,可以考虑替换EL2008模块前面的EL模块。EL1xxx系列(EL1052,EL1054和EL15xx除外)都是数字量的输入模块,模块上面的LED指示灯主要用于显示外部信号输入状态常见EL1004,EL1008模块的LED灯说明:https://infosys.beckhoff.com/content/1033/el10xx_el11xx/1629658507.html?id=1251117201267835091EL2xxx系列(EL20/EL21/EL2262/EL26/EL27/EL28)都是普通的数字量输出模块,模块上面的LED指示灯主要用于显示模块的输出状态常见的EL2004,EL2008模块的LED灯说明:https://infosys.beckhoff.com/content/1033/el20xx_el2124/1636470795.html?id=3727064653079856643EL3xxx系列的模拟量输入模块中有很多种类,主要实现电压电流的数据采集,热电偶和热电阻 工信部备案:沪ICP备12000630号-1沪公网安备 31010602003961号 Beckhoff Virtual Academy2013 - Now BACN All Rights Reserved 基于xenomai的ethercat实时线程运行掉线 解决办法_ethercat总线一台断线影响-CSDN博客 基于xenomai的ethercat实时线程运行掉线 解决办法 最新推荐文章于 2023-02-02 14:38:02 发布 dbdxnuliba 最新推荐文章于 2023-02-02 14:38:02 发布 阅读量1.4k 收藏 1 点赞数 分类专栏: xenomai C++编程 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/dbdxnuliba/article/details/108478862 版权 C++编程 同时被 2 个专栏收录 50 篇文章 0 订阅 订阅专栏 xenomai 12 篇文章 2 订阅 订阅专栏 基于xenomai的ethercat实时线程运行掉线解决办法: 在movej运动的最后发现经常出现ethecat运行掉线的现象: 发现look_ahead有打印finish rough interp的语句 发现vel_interp有打印get invalid data的语句,都是在movej粗插补和精插补完成时打印的,屏蔽之后发现,ethecat掉线次数明显减少 ethercat线程以及vel_interp线程,look_ahead线程不能家加logger 或者std::cout语句 优惠劵 dbdxnuliba 关注 关注 0 点赞 踩 1 收藏 觉得还不错? 一键收藏 知道了 0 评论 基于xenomai的ethercat实时线程运行掉线 解决办法 基于xenomai的ethercat实时线程运行掉线解决办法:在movej运动的最后发现经常出现ethecat运行掉线的现象:发现look_ahead有打印finish rough interp的语句发现vel_interp有打印get invalid data的语句,都是在movej粗插补和精插补完成时打印的,屏蔽之后发现,ethecat掉线次数明显减少ethercat线程以及vel_interp线程,look_ahead线程不能家加logger 或者std::cout语句... 复制链接 扫一扫 专栏目录 基于Xenomai的实时Linux分析与研究 07-25 Linux操作系统具有开源、稳定和支持多平台的特点,非常适合于嵌入式系统开发。本文分析了Linux在硬实时方面的不足,详细介绍了Linux的一种硬实时解决方案——Xenomai。 EtherCAT连续丢帧引起网络中断问题排查方法.docx 04-27 EtherCAT连续丢帧引起网络中断问题排查方法 参与评论 您还未登录,请先 登录 后发表或查看评论 EtherCAT总线运动控制器应用进阶一 AGONIiii的博客 01-21 4651 01 准备工作 一、材料准备 1.硬件 A.ZMC432控制器一台,带EtherCAT总线接口。 B.松下EtherCAT伺服驱动器+电机一套 C.电脑一台。 D.带屏蔽层网线两根。 E.24V直流电源一个。 F.接线端子与连接线若干。 2.软件 A.ZDevelo... 【转】【EtherCAT理论】一、EtherCAT现场总线 weixin_44109038的博客 09-26 1584 【转】【EtherCAT理论】一、EtherCAT现场总线 1、EtherCAT介绍 EtherCAT现场总线协议是由德国倍福公司在2003年提出的,该通讯协议拓扑结构十分灵活,数据传输速度快,同步特性好,可以形成各种网络拓扑结构。EtherCAT协议自从推出以来,凭借其优异的性能得到了工控领域的广泛关注,并且取得了长足的发展。在2003年,EtherCAT协议推出之后,同 EtherCAT诊断-分布时钟同步诊断 Hongke_Tech的博客 01-03 5352 我们在做EtherCAT主从通讯测试时,比较容易在DC配置出现错误,特别是使用到从站DC模式时,有时会出现代码为0x1A的“同步错误”,有时即使没报错误,伺服从站运行过程中也会出现电机轴的抖动,什么原因呢?这里以KPA EtherCAT和三洋伺服测试举例,通过采集SYNC0与SM2信号之间相位关系波形图,做出诊断结论。 测试前,需要认识两个概念:1、从站同步模式2、同步错误 一、从站同步模式 简单... EtherCAT系统中一个从站断线其他从站正常运行的设置方法 08-08 EtherCAT系统中,由多个从站组成,如果某个从站断线,则造成其他从站停止工作,本文档讲述通过配置,使得各个从站之间是否断线不影响其他从站运行 EtherCAT主站掉线后,如何保证目标系统免受故障影响? 工业通讯__HongKe的博客 06-08 1779 所有工业自动化系统都对可靠性和故障时的安全操作有着严格的要求,因为当意外故障而导致停机时,生产所有者将遭受巨大的损失,因而确保生产系统得到妥善保护、免受各种硬件和软件故障的影响十分重要。... 记录小白的igh ethercat遇到的问题 m0_47248550的博客 02-02 919 小白igh ethercat主站设计过程的记录 【EtherCAT理论篇】二、EtherCAT工作原理 热门推荐 zhandouhu的博客 10-26 2万+ 1、EtherCAT系统组成 EtherCAT是一种实时以太网技术,由一个主站设备和多个从站设备组成。主站设备使用标准的以太网控制器,具有良好的兼容性,任何具有网络接口卡的计算机和具有以太网控制的嵌入式设备都可以作为EtherCAT的主站。对于PC计算机而言,主站控制器多采用倍福开发的TwinCAT软件。EtherCAT从站使用专门的从站控制器(ESC),如专用集成芯片ET1100和E... AX58200 EtherCAT从站专用通讯SoC产品简介 12-19 AX58200是一款2/3端口EtherCAT从站专用通讯SoC,以ARM® Cortex®-M4F微控制器为核心,EtherCAT從站控制器(ESC)集成两个可同时支持光纤和铜线网路应用的百兆以太网PHY。支持含RMII接口与硬体加密引擎的10/100 Mbps以太网MAC,快速USB OTG与SPI/UART/I2C/I2S/CAN/PWM等各种通讯接口。
基于Zynq和Xenomai的EtherCAT MIP开发方案 11-04 基于Zynq和Xenomai的EtherCAT MIP开发方案 基于ARM的Linux+Xenomai实时系统搭建及igh主站配置 最新发布 09-21 基于ARM的Linux+Xenomai实时系统搭建及igh主站配置 基于Xenomai的实时Linux系统的研究.pdf 09-06 基于Xenomai的实时Linux系统的研究.pdf 基于Xenomai的实时Linux分析与研究.pdf 09-06 基于Xenomai的实时Linux分析与研究.pdf C++ shared_ptr作为函数参数用来做返回值时一定要加引用& dbdxnuliba的博客 03-07 7479 CCmdLookAheadPlannerResultPtr ptrCmdLookAheadPlannerResult;//声明智能指针,但是先不分配内存和地址 demo_singleMovelPlan(ptrCmdLookAheadPlannerResult); //作为函数参数,用来输出 int demo_singleMovelPlan(CCmdLookAheadPlanner... C++ 构造函数使用:父类没有定义默认构造函数时,子类构造函数的定义方法 dbdxnuliba的博客 07-26 6132 继承遇到的坑: 当父类没有定义默认构造函数,定义了了自定义的构造函数时,子类定义构造函数时需要使用父类定义的构造函数,否则编译报错。 父类:没有定义默认构造函数,而是定义了其余的构造函数 子类的构造函数在定义时需要调用父类的定义构造函数,否则编译错误; ... 谷歌代码规范的中文版 dbdxnuliba的博客 08-06 1848 谷歌代码规范的中文版 https://zh-google-styleguide.readthedocs.io/en/latest/google-cpp-styleguide/ 三角函数精度要用acos,而不应改用acosf,要用double精度api,否则精度损失很大 dbdxnuliba的博客 05-23 1527 编程时,一定不要用acosf,asinf ,应该用acos,asin 因为acosf为float精度,经过三角变换之后,精度损失很大,亲身经历过,痛的领悟呀。 xenomai定时线程饥饿问题 05-05 Xenomai定时线程饥饿问题通常是由于定时线程优先级太低导致的。在Xenomai中,定时器是由实时时钟(RTC)驱动的,定时线程是在RTC中执行的。如果定时线程优先级太低,其他实时线程的优先级可能会超过它,从而导致定时线程无法及时运行。 为了解决这个问题,您可以尝试提高定时线程的优先级。可以使用以下函数来设置线程的优先级: ```c int pthread_setschedparam(pthread_t thread, int policy, const struct sched_param *param); ``` 其中,`policy` 参数应设置为 `SCHED_FIFO` 或 `SCHED_RR`,`param` 参数应设置为一个 `sched_param` 结构体,其中包含线程的优先级。 例如,以下代码将线程的优先级设置为最高: ```c pthread_t thread; struct sched_param param; param.sched_priority = sched_get_priority_max(SCHED_FIFO); pthread_setschedparam(thread, SCHED_FIFO, ¶m); ``` 请注意,提高定时线程的优先级可能会影响其他实时线程的运行,因此应谨慎使用。 “相关推荐”对你有帮助么? 非常没帮助 没帮助 一般 有帮助 非常有帮助 提交 dbdxnuliba CSDN认证博客专家 CSDN认证企业博客 码龄8年 暂无认证 175 原创 2万+ 周排名 33万+ 总排名 35万+ 访问 等级 4162 积分 123 粉丝 199 获赞 81 评论 1050 收藏 私信 关注 热门文章 机器人学导论,课后习题答案。 20899 SolidWorks质量特性详解(惯性张量、转动惯量、惯性主轴) 18583 2022目前三种有效加速国内Github 17180 symbol lookup error:XXX.so: undefined symbol: 解决办法 12798 urlopen error [Errno 111] Connection refused 8473 分类专栏 点云处理 11篇 深度学习 2篇 轨迹规划 10篇 数学 4篇 教育 1篇 数字信号处理 4篇 RTT 2篇 sql 2篇 visual studio 1篇 虚拟现实 1篇 图像处理 2篇 slam 4篇 视觉抓取 2篇 视觉 6篇 数控技术 1篇 无人机 1篇 机械手 29篇 C++编程 50篇 嵌入式编程 4篇 xenomai 12篇 QT编程 6篇 计算机算法 4篇 UBUNTU 32篇 ROS 54篇 通讯 12篇 AI 4篇 移动机器人算法 11篇 仿真 8篇 操作系统 12篇 控制 6篇 机器人应用 2篇 最新评论 SolidWorks质量特性详解(惯性张量、转动惯量、惯性主轴) mxmx_py: 博主,假如用excel建多个参数的零件怎么能一起显示他们的转动惯量呢? C++线代运算库Armadillo安装与使用 67373_: 博主你好,请问有编译armv8的armadillo库吗? 杜国光博士,基于视觉的机器人抓取--物体定位,位姿估计到抓取估计课堂笔记 m0_57008231: 抱歉刚看到,这个真没有 python smbus 安装 嗡嗡嗡qwq: 第三个命令可以运行,但是依然没有smbus模块 杜国光博士,基于视觉的机器人抓取--物体定位,位姿估计到抓取估计课堂笔记 pikaq_9: 大佬要是觉得不过分的话,我还想要大佬的这份综述PPT,研一小菜鸡想下次组会汇报用 您愿意向朋友推荐“博客详情页”吗? 强烈不推荐 不推荐 一般般 推荐 强烈推荐 提交 最新文章 dell install windows and ubuntu 安装 graspnet 的方法 gazebo actor设置 2023年4篇 2022年36篇 2021年47篇 2020年54篇 2019年107篇 2018年11篇 2017年2篇 2016年1篇 目录 目录 分类专栏 点云处理 11篇 深度学习 2篇 轨迹规划 10篇 数学 4篇 教育 1篇 数字信号处理 4篇 RTT 2篇 sql 2篇 visual studio 1篇 虚拟现实 1篇 图像处理 2篇 slam 4篇 视觉抓取 2篇 视觉 6篇 数控技术 1篇 无人机 1篇 机械手 29篇 C++编程 50篇 嵌入式编程 4篇 xenomai 12篇 QT编程 6篇 计算机算法 4篇 UBUNTU 32篇 ROS 54篇 通讯 12篇 AI 4篇 移动机器人算法 11篇 仿真 8篇 操作系统 12篇 控制 6篇 机器人应用 2篇 目录 评论 被折叠的 条评论 为什么被折叠? 到【灌水乐园】发言 查看更多评论 添加红包 祝福语 请填写红包祝福语或标题 红包数量 个 红包个数最小为10个 红包总金额 元 红包金额最低5元 余额支付 当前余额3.43元 前往充值 > 需支付:10.00元 取消 确定 下一步 知道了 成就一亿技术人! 领取后你会自动成为博主和红包主的粉丝 规则 hope_wisdom 发出的红包 实付元 使用余额支付 点击重新获取 扫码支付 钱包余额 0 抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 余额充值 %����
1 0 obj
<>/Lang(zh-CN)/MarkInfo<>/StructTreeRoot 478 0 R /Metadata 27455 0 R >>
endobj
2 0 obj
<>
endobj
3 0 obj
<>
endobj
5 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 120 0 R /Group<>/Tabs/S/StructParents 0>>
endobj
6 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 125 0 R /Group<>/Tabs/S/StructParents 1>>
endobj
7 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Annots[ 133 0 R 134 0 R 135 0 R 136 0 R 137 0 R 138 0 R 139 0 R 140 0 R 141 0 R 142 0 R 143 0 R 144 0 R 145 0 R 146 0 R 147 0 R 148 0 R 149 0 R 150 0 R 151 0 R 152 0 R 153 0 R 154 0 R 155 0 R 156 0 R 157 0 R 158 0 R 159 0 R 160 0 R 161 0 R 162 0 R 163 0 R 164 0 R 165 0 R 166 0 R 167 0 R 168 0 R 169 0 R 170 0 R 171 0 R 172 0 R 173 0 R 174 0 R 175 0 R ]/MediaBox[ 0 0 595.32 841.92]/Contents 176 0 R /Group<>/Tabs/S/StructParents 2>>
endobj
8 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 198 0 R /Group<>/Tabs/S/StructParents 47>>
endobj
9 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 215 0 R /Group<>/Tabs/S/StructParents 68>>
endobj
10 0 obj
<>/Font<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 220 0 R /Group<>/Tabs/S/StructParents 69>>
endobj
11 0 obj
<>/Font<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 223 0 R /Group<>/Tabs/S/StructParents 70>>
endobj
12 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 235 0 R /Group<>/Tabs/S/StructParents 71>>
endobj
13 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 236 0 R /Group<>/Tabs/S/StructParents 72>>
endobj
14 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 238 0 R /Group<>/Tabs/S/StructParents 73>>
endobj
15 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 239 0 R /Group<>/Tabs/S/StructParents 74>>
endobj
16 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 243 0 R /Group<>/Tabs/S/StructParents 75>>
endobj
17 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 248 0 R /Group<>/Tabs/S/StructParents 76>>
endobj
18 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 250 0 R /Group<>/Tabs/S/StructParents 77>>
endobj
19 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 251 0 R /Group<>/Tabs/S/StructParents 78>>
endobj
20 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 252 0 R /Group<>/Tabs/S/StructParents 79>>
endobj
21 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 254 0 R /Group<>/Tabs/S/StructParents 80>>
endobj
22 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 255 0 R /Group<>/Tabs/S/StructParents 81>>
endobj
23 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 256 0 R /Group<>/Tabs/S/StructParents 82>>
endobj
24 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 259 0 R /Group<>/Tabs/S/StructParents 83>>
endobj
25 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 262 0 R /Group<>/Tabs/S/StructParents 84>>
endobj
26 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 264 0 R /Group<>/Tabs/S/StructParents 85>>
endobj
27 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 268 0 R /Group<>/Tabs/S/StructParents 86>>
endobj
28 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 271 0 R /Group<>/Tabs/S/StructParents 87>>
endobj
29 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 273 0 R /Group<>/Tabs/S/StructParents 88>>
endobj
30 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 276 0 R /Group<>/Tabs/S/StructParents 89>>
endobj
31 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 286 0 R /Group<>/Tabs/S/StructParents 90>>
endobj
32 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 298 0 R /Group<>/Tabs/S/StructParents 91>>
endobj
33 0 obj
<>/ExtGState<>/Font<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 302 0 R /Group<>/Tabs/S/StructParents 92>>
endobj
34 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 304 0 R /Group<>/Tabs/S/StructParents 93>>
endobj
35 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 307 0 R /Group<>/Tabs/S/StructParents 94>>
endobj
36 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 316 0 R /Group<>/Tabs/S/StructParents 95>>
endobj
37 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 320 0 R /Group<>/Tabs/S/StructParents 96>>
endobj
38 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 323 0 R /Group<>/Tabs/S/StructParents 97>>
endobj
39 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 326 0 R /Group<>/Tabs/S/StructParents 98>>
endobj
40 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 329 0 R /Group<>/Tabs/S/StructParents 99>>
endobj
41 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 330 0 R /Group<>/Tabs/S/StructParents 100>>
endobj
42 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 331 0 R /Group<>/Tabs/S/StructParents 101>>
endobj
43 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 332 0 R /Group<>/Tabs/S/StructParents 102>>
endobj
44 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 333 0 R /Group<>/Tabs/S/StructParents 103>>
endobj
45 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 334 0 R /Group<>/Tabs/S/StructParents 104>>
endobj
46 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 335 0 R /Group<>/Tabs/S/StructParents 105>>
endobj
47 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 336 0 R /Group<>/Tabs/S/StructParents 106>>
endobj
48 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 337 0 R /Group<>/Tabs/S/StructParents 107>>
endobj
49 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 338 0 R /Group<>/Tabs/S/StructParents 108>>
endobj
50 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 339 0 R /Group<>/Tabs/S/StructParents 109>>
endobj
51 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 340 0 R /Group<>/Tabs/S/StructParents 110>>
endobj
52 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 341 0 R /Group<>/Tabs/S/StructParents 111>>
endobj
53 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 342 0 R /Group<>/Tabs/S/StructParents 112>>
endobj
54 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 343 0 R /Group<>/Tabs/S/StructParents 113>>
endobj
55 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 344 0 R /Group<>/Tabs/S/StructParents 114>>
endobj
56 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 345 0 R /Group<>/Tabs/S/StructParents 115>>
endobj
57 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 346 0 R /Group<>/Tabs/S/StructParents 116>>
endobj
58 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 347 0 R /Group<>/Tabs/S/StructParents 117>>
endobj
59 0 obj
<>/Font<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 348 0 R /Group<>/Tabs/S/StructParents 118>>
endobj
60 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 349 0 R /Group<>/Tabs/S/StructParents 119>>
endobj
61 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 350 0 R /Group<>/Tabs/S/StructParents 120>>
endobj
62 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 351 0 R /Group<>/Tabs/S/StructParents 121>>
endobj
63 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 357 0 R /Group<>/Tabs/S/StructParents 122>>
endobj
64 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 359 0 R /Group<>/Tabs/S/StructParents 123>>
endobj
65 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 360 0 R /Group<>/Tabs/S/StructParents 124>>
endobj
66 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 361 0 R /Group<>/Tabs/S/StructParents 125>>
endobj
67 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 362 0 R /Group<>/Tabs/S/StructParents 126>>
endobj
68 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 363 0 R /Group<>/Tabs/S/StructParents 127>>
endobj
69 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 364 0 R /Group<>/Tabs/S/StructParents 128>>
endobj
70 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 366 0 R /Group<>/Tabs/S/StructParents 129>>
endobj
71 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 369 0 R /Group<>/Tabs/S/StructParents 130>>
endobj
72 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 372 0 R /Group<>/Tabs/S/StructParents 131>>
endobj
73 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 373 0 R /Group<>/Tabs/S/StructParents 132>>
endobj
74 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 374 0 R /Group<>/Tabs/S/StructParents 133>>
endobj
75 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 375 0 R /Group<>/Tabs/S/StructParents 134>>
endobj
76 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 376 0 R /Group<>/Tabs/S/StructParents 135>>
endobj
77 0 obj
<>/Font<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 377 0 R /Group<>/Tabs/S/StructParents 136>>
endobj
78 0 obj
<>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 378 0 R /Group<>/Tabs/S/StructParents 137>>
endobj
79 0 obj
<>/Font<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 389 0 R /Group<>/Tabs/S/StructParents 138>>
endobj
80 0 obj
<>/Font<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 391 0 R /Group<>/Tabs/S/StructParents 139>>
endobj
81 0 obj
<>/ExtGState<>/XObject<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/MediaBox[ 0 0 595.32 841.92]/Contents 393 0 R /Group<>/Tabs/S/StructParents 140>>
endobj
82 0 obj
<>
endobj
83 0 obj
<>
endobj
84 0 obj
<>
endobj
85 0 obj
<>stream
x�� `������H�kIK� I�R�Q�ܔ�@A(�`R�(Wy/�������c���s):ls��tS'蜂0&S��J�������6i�x������~����~� !�?"³��qi�q��k�^]��-lx q/~�P�C����[��������.��V�5��Dĝ��l\�j��EwMxq�|��]RY#���m�ק �ׂF��;��~��W��~����?���Uk�+���}H�y>����r^g���O���K�+k�=:��Nu~]��%'�]�R%���wߍ��9�_�K��u3�^BB���ޜ�:��=��i h�şgQt��1q�3M��
W=�4��.�Unr!
���gq�}�͐���Â�Fj4 �2
F; V7%n���qw �DHj`�� b��U<�DGy ����0�Z�8��!��7�M�Ip֓� ���1�w�/��F��`0m@B\&�4z��㋗���`0��`0��`0��`0��`0��`0��`0��`0��`0��`0��`0��`0��`0��`\�Hml�lS�|�=>�|ø����--�yO���&���}��h���V��k����߂���ħ3����H@[n����F`g]���{�(Î8����0��[�`n��Z'��Y�����o��цA<.�C!����:��F�|o��ݭ�j�kg�}:��/���tGť�0uv�W2R�2���Ouu����b\��9� �軶�]���@g����0��v���H�(C��"pcmż�1c���vp?�;��i��b0�Pvo��8��ׇ�{o��Z�y�s��-����)
Ra��?�z��s�aϨ˅P�7�g�l�9V� ���[�#vv��M�18n^=����R�y{��o�R���cm�C�ޙ��\,������{��|��֮��cj��brF$mw���gI4�R�X���6��}��t�d~��H��]}�����є�v���������:?���^.�1E�pf�� =6�b4Ӗ1�q�!��wƥCw����!�+ V���u��;�5v�I�_�K��:��*�@�������imMS'�ߦ=���X�%��;�]D7��E���u�.��/�M��ܫԆ�f����x6��=Z+�v��Xi���Dj�#hkI��c�>���E��#�� �����r::����:�pu-��A���c��1x]Tw&0�Ѿ��J.��2�訾/�k����]kÌa[=�E �_ʗ+����iR���{oE�U�ߋ���v{���+��<�7�f\�t�Z��������W\�뙤K�?��ݽ/ y���W"m}��`0���)��m�������j->Q��'s�wF�� ]"g�1�L��ۆA�=әq�ԡu=�8��ߍC��A�n����I����J��2c]��ʥ��@ߵK�����z,Ψ�n�!�G q��KW���,bUB�9����D���0�u�R'�-�g#�b m���8\�H-�7ۊ���m�ۜc�'��AB���4[o�6���ۭ��2�#]QϺ���Pt������`W�!��/�0�v�e0Fl �7Fs�a���=����f��,��Yp���e��Y���������t>G4s�-���p�Y�� ��G����g9@�>�0�tv�����9�Ł�0v7���G3c;�tY�I�t.���-��Z�����a�[m/�v�3�bEw��b\^H�k��"�o�r�g~��y�Hho�K�������>�f0���gF(��\-��=�������`0..峒�����h/l#tv9c�"��3p�!�o�p��F����j?{W��ܕ�e�%ii]]�Ìj-��`0�"p�4�uL�=������s$ڻ��wo�Z0�.���C���{���U��������yߌ+(�u��6n��t��A[Dza���Ps����?�#��mi�lk}��`\�?��kC=?���2[�V�1o�Y
�v�uPa�i�^#�����c��A���K��k���U�x��1{K�I�bOa��Qhtf�2\�������$F�\��+��87���G��1��#��������>#��`0����tԚX� B{����!���X��]�{,l��C��\ngy^.��k�GB��{E�^�C����h�������@���2@�;���#����?M<#���z{cF��x�6��E��d~��uG.��Q������/U��>�P���4{��`0bE����X��`��̶弁hׇ\{��;��{�b�����`0�����e�ț]]��`0��`0[��`0.W$��-pM������#��eg/w7$����@Xb�g��燀�.!�
���A����Vz净(Fo���v���P�_��G�@J�x�|�g����WP"�X�*A�b
�y �X�+@,QK�S��O��0�(K܀��_��[�DG���#�ȡ���Q�J�v�_�c�O��utD��W�cr� ����b?���="���� �x�!^b�wO���"�l��>�~T#�E�boT�/@� ��������r�ϡ�\�����w�]p'��z@(BF~$֢{��H�� �%lG=��#��(�&�����P�E���o����� _~ѲС hC`�u'��� ���G#�@Ǻ:�<���8D�DPj$��
��A�Bףr��i87��p#�"n27����媹�����p�8�����~��O�;�I�.8�[��WDNLg�s���8>�d�m}��K�e�rt&]��P7Z7V7Y�_���AwT�;��W�����L}�ޤ���/�/֯�o����$G�陓����+G�c�1�s��͙�33�,�2gYΚ��r~��p��
)�����8øָ�x��A���_0�����Ii�3�&�a�̓v�uЏ=2��A�zbЯ�f�K����3������ߓ�/��|����yC����:�͖[-�-wY��˗��_��i����v�g�� b���r�o��%�}�.Kg���)�����u��>C����j�\��]��w��H�>r��B�kN{{NMN]@�������x�q���!�o�0�d|���I����O�i�E>�W����C�Oȿ7����CCur�;,[-N��;-?��i���I�o-�Y^��by���04�i�!����9��!��H{5�}*����И�Nr继���6w������Y�'�j� ���F�ug�ֺ>y#<���
*_M��h�[Uo����g���fL�q���Nԟ '���;>����Î=��x����S�'�^Ky��_����U�^��j� ���ʿ0jyu�+�W��m�w���woߵ���[�o�^���u{�M]7��d�����������_�?V�(u�����O�}X�f;m��
�(����O�!����,��/�|_�/��@�����ň���� ���=� � �r�~�� �� `"`$#<+�c�������Sx[8彶�RF��X)���U�õJ��Zj�
P��_�G�>z�-����!��}<q>��b��p\�G��x���x���<O�\���ix:.�3�L|5��g�R<�Ṹ����5؊m�/��"�_���W�j\���x���� ��«q^�1&��z�_���
x#�o�?�����߀o�7��6�߂w��؉w�[�A�7�|���ç�����>�]�=|�%� ?�?�O�s�W�#|������o��X����������?�F�"n�p_lƏ�7q~Ɵ�������3�+|�?���O������$>�?ÿ�_��8J�h'r��C�gx?6�zGYD�H5��L!�d*�F��2��$W�Yd6)%sH�K��<2�\C��F*���Ԑ%����$[��d)YFj�r���$��jRG�Lq�����#ב�d�H�'���f�C���D���vOұ� ��D$J�"�#=��$�Dғ$�d�BRI� �$�d�^DC�-�CtDOz�~�HL$��'y�L��dL��2�X�0R@��B2��$��2��%��2��Id2ON�����<~�_��ᗰ��F�4�
�bN%ǰ��t���Y�@~�3�I�YNM~O�ýq�-y�mjqmR|� ��G�$ä%���� �1p �RNr�dM�l��U4Ǫ�Qf�2Y���4���%�PQY����pn��s
3�TXuS�v�tʿ��h6��\��r���� �TYݬ�d<�olйP��YӀ#�i8Y����wb3�������6HH�/�O��/�tS�G��$T���a�'���t���i`�F���{6x�v��Z�s)���R�S����O]f��*5N�A���{����
z��G9
E��#I���Qn=�s�$�D[C?0��A�˺<ե�T�� 4���9�K�}͑"��ʦ��!���.d=ɯǡ�üW/��I��`"zM���EГ�z[e=HH��xE�TW��xHm�ut���;�CO��N� ��d���ֆ�"���V�Q��y��Wa}B����M�0���e6\(�s���S�Yf�\&��FW�\+�i�@��EtherCAT Diagnostics 诊断 - 知乎
ethercat从站频繁掉站,怎么才能解决呢?-专业自动化论坛-中国工控网论坛
【EtherCAT】4.实现一个成熟的从站 - 知乎
EtherCAT主站掉线后,如何保证目标系统免受故障影响?_ethercat中间设备出问题-CSDN博客
>EtherCAT Diagnostics 诊断 - 知乎
维护工程师指导手册: EtherCAT诊断 | 倍福虚拟学院
基于xenomai的ethercat实时线程运行掉线 解决办法_ethercat总线一台断线影响-CSDN博客
>