EtherCAT在人形机器人上应用的局限V2

杨福宇 yfy812@163.com

汽车好像可归入轮足机器人,可是没有看到汽车上用EtherCAT,这是警示。
需要先对EtherCAT作一些评估。汽车是成熟的工业,它对功能安全有系统的要求,从设计,验证等有标准ISO26262。其中危害分析与风险评估HARA是安全要求的起点,例如未预期的加速/减速的危害。然后对可能引起该危害的原因作关连分析,例如故障树分析FTA。而从故障树分析可以细化到电磁干扰的影响。涉及到车内网络就涉及EMI对通信的影响。例如:
在这里插入图片描述

ISO26262-11:2018对CAN,Ethernet 等 IP 的要求

对人形机器人的执行部分来说,也是有功能安全的要求的,例如
1.端茶的服务机器人动作故障可能把热茶泼到客户脸上造成烫伤;
2.电焊机器人行程不对可以造成灭弧,需要重启;
3.巡检机器人动作不协调跌倒,损伤现场设备;
4.险工机器人误动作使物品跌落造成爆炸或污染。

LAN9253是MICROCHIP生产的2/3-Port EtherCAT® Slave Controller with Integrated Ethernet PHYs。这个数据页是2020年的版本,也是当前用的器件之一。其物理层是基于100BASE-TX的以太网协议,因此100BASE-TX的性能是对EtherCAT有决定性影响。

我感兴趣的是100BASE-TX的link down的发生原因以及后果。
先说后果,发生link 丢失后重启至少要330ms,其中还含有DATA_VALID的先决条件,所以闭环控制系统变为开环的时间更长,对人形机器人显然是不行的。

P196/402
To allow the line to stabilize, the link integrity logic will wait a minimum of 330 ms from the time DATA_VALID is asserted until the Link-Ready state is entered. Should the DATA_VALID input be negated at any time, this logic will immediately negate the Link signal and enter the Link-Down state.

ISO26262-10功能安全的标准中有一个安全相关的时间间隔的概念fault tolerant time interval (FTTI),涉及上次探测时间、故障发生时刻、故障探测到时刻、安全措施启动时刻、达到安全状态的时刻等。显然,link 丢失后重启的时间是必须要小于达到安全状需要的时间的。

在LAN9253数据页中没有找到关于100BASE-TX的link down的更多介绍,于是参考 TI的83822以太网收发器数据页,这是2016年的版本。
P63/131
在这里插入图片描述

其中涉及5个出错造成link down 的自检项。100BASE-TX的设计很复杂,不是用户可以迅速理解的,我就初步学习知道的各环节间的关系描述如下。
总线上的信号是经过变压器耦合的,100BASE-TX有变压器性能的规定。
在这里插入图片描述

100BASE-TX变压器部分的指标见下图,这个H1100NL产品的指标略高于在TI DP83826中介绍的通用100BASE-TX的建议。例如differential to commen mode rejection ratio 项。
在这里插入图片描述

在这里插入图片描述

TI DP83826

100BASE-TX变压器的输入是来自发送方symbol信号的3态模拟电压,1v,0v,-1v,经变压器的insertion loss 之后到总线上约0.88v,如果干扰感应到总线上的差压达到一半(0.44V),那么就可能造成symbol读取的差错(MLT-3译码错)。接收方变压器也有insertion loss,接收节点收到的电平约0.8v,0v,-0,8v。
接收电压经过6位AD采样,然后经MTL-3译码变为3态symbol数字输出。接收方对这个输入模拟量要作很多工作才能判断是否会产生link down。
第一个内容是模拟信号的品质signal quality index ,通过采样值计算出信噪比SNR,如果SNR<18dB,便是坏状态,引起link down。
这一关在汽车行业就较难通过,因为国标GB/T 21437.3-2021道路车辆 电气/电子部件对传导和耦合引起的电骚扰试验方法 第3部分:对耦合到非电源线电瞬态的抗扰性 (对应ISO7637-3-2016)有对辐射传递的电磁干扰规定。例如测试方法规定的到达被测对像DUT的波形2a为峰值75v,脉宽50us,波形3a峰值max-110v(DCC法,CCC法@12VD电池系统),脉宽0.15us。波形3b峰值max75v(DCC法,CCC法@12VD电池系统),脉宽0.15us。
如果按H1100NL变压器的differential to commen mode rejection ratio=-42dB计算,叠加到信号上的共模变为差模电压可达到0.59V(@75V),而推荐differential to commen mode rejection ratio=-30dB时可达到2.1V。超过了总线传送的信号(0.88V),造成link down。

RJ45连接时双绞线解绞过长,也会引起噪声的增大,造成link down。

ISO7637-3-2016标准,慢速瞬态试验脉冲2a用于模拟较大的感性负载电路断开时产生的瞬态脉冲,比如散热器风扇电机、空调压缩机离合器等负载。其中汽车散热器风扇电机功率较小为100-200w,与人形机器人的电机差不多,所以人形机器人应用时应该考虑。

第二个内容:100BASE-TX收发器中采用了扰码器的设计,用于传送的数据流更接近随机波形,从而减少电缆的电磁发射。但是这个设计就需要接收方对解扰码器的同步。这个同步是在通信idle时进行的。100BASE-TX的帧间间隔为512bit~5us,只要干扰不频发,同步可以实现,但是遇到一次ISO7637-3的慢速瞬态试验脉冲2a,它的持续时间为50us就无法同步了,造成link down。

第三个内容:当干扰幅度小于ISO7637-3的情况,但接近信号幅度50%时就可能造成symbol的错误。symbol是总线上传送的MLT-3的3态信号,以125MHz传送。100BASE-TX采用MLT-3编码的优点是可以用较低带宽125Mbaud的电缆,而用Manchester编码传送100Mbaud时要用200Mbaud的电缆。接收方在有干扰时MLT-3判断出错时就可能把1读为0,或0读为1,把-1读为0,或0读为-1。接收方判错后有二种后续情况,其一是接收方发现了不合MLT-3编码规则的错,例如干扰大时有1~-1间的直接跳变,即MLT-3 errors。TI83822数据手册p46/131
在这里插入图片描述

ISO7637-3波形3a峰值max=-110v(DCC法,CCC法@12V电池系统),脉宽0.15us+0.045us=0.195us,占24.375个symbol。在较大宽度的1次波形3a下,就足以产生20个以上MLT-3 error,造成link down。更不要说波形2a了(持续50us)。

第四个内容:接收方判错MLT-3后的第二种后续情况是没发生1-1之间的跳变,而是发生10、01、-10、0~-1之间的变化。它们会产生4B/5B译码的错误。这里的例子太多了。它们包括收发4B数据的错误、5B数据与控制码间转换、5B数据或控制码转为无效码invalid code的错误。100BASE-TX采用4B/5B编码的原因是为了得到更多的跳变沿,保证时钟的同步精度。
下表中说明了一些出错后的归类,例如控制码J必需处在IDLE状态之后见到,而不是在别处见到,k必需在J之后见到,任何其它码在J之后见到,将是接收出错RXER…
传送中出现无效码也会使出RXER计数器增加。TI83822数据表p68/131讲了接收错计数器的RXCR的规则,它是累加的,直至32位溢出,达到7Fh时产生中断,读RXCR可清0。P61/131有RX-ER使能位,在IDLE状态下也可查错。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

下面是数据出错的例子。100BASE-TX的32位CRC是对4B的数据流进行校验的,本来就只能达到HD=4,只能保证检出3个错,存在4bit错而CRC检验通过的情况。现在最坏情况下symbol的1个错可能造成4B中4个错,这将使以后的CRC检验出现漏检的可能性增大。
在这里插入图片描述

从上述分析可知,100BASE-TX在恶劣电磁环境中,若保护措施不足,受辐射干扰而失效的可能性很大。这种失效的特点是长时间的link down(330ms)或CRC漏检。Link down使人形机器人执行器闭环控制变为开环,是一大忌。当发生错帧漏检后又link down则把错误的指令长时间执行下去,危害就更大。
在这里插入图片描述

这个视频中EtherCAT控制的左膝执行器和左髋关节执行器收到了错误的命令(错帧漏检)(参见上述1个symbol错会引起多bit data错,造成CRC漏检),通信上好像无冗余,错误指令使机器人左脚快速伸直,左侧向上加速度太大,通信刷新可以看到(倒下过程中可看到左膝执行器和髋关节执行器有回缩),但无法形成减速度(力的单向作用,非线性),就倒下了。可能要添加侧滚姿态信号在右脚产生反向力的控制回路。
人形机器人采用100BASE-TX为基础的以太网协议就会遇到批量生产时的功能安全认证的问题,有些认证并未提及ISO-7637-3的内容,就可能遗漏了,对于干扰环境的忽视会增大用户安全风险,长远来看,伤的还是自己,用户会用脚表达其关切;如要保证无干扰,就要采用附加的措施,这意味着成本的提高、走线空间的新的约束。因此并不是通信性价比的优选选项。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐