Conal Watterson博士,ADI公司高级应用工程师
控制器局域网(CAN)采用ISO 11898标准,广泛用于工业和汽车应用中。CAN协议(比如DeviceNet或CANOpen)依赖内置的差错校验和差分信号功能。电流隔离可进一步增强鲁棒性,提供对高压瞬变的抵抗能力,代价是更长的传播延迟。CAN节点的最佳配置则保证,即便存在隔离,也能具有最大数据速率和距离。
为什么传播延迟很重要
传播延迟可能会影响并发传输和节点间的仲裁。冲裁依赖于CAN信号;逻辑0表示“主动”(总线间存在差分电压),逻辑1表示“被动”(全部输出变为高阻抗),意味着主动位将覆盖被动位。发射期间,所有节点均会监控总线;而当它们发送被动位,允许另一个节点赢得仲裁时,如果出现传播延迟,则会停止监控(图1中的节点A)。
图1. 两个节点间的仲裁传播延迟不可过大,否则可能在其他节点传播主动状态之 前监控总线状态。对于图2中的节点A和节点B,往返时间 很关键;该时间等于TPropAB加TPropBA,或者两倍于电缆和收 发器造成的延迟时间,包括隔离(如有)。相比光耦合器, 数字隔离器可降低传播延迟,但系统允许的总传播延迟是 固定的,因此加入隔离可能会缩短最大电缆距离。
图2. 存在传播延迟时的仲裁传播延迟补偿
为了补偿隔离引起的传播延迟,可调节特定的CAN控制器 参数。首先为CAN控制器时钟设置波特率预分频器(BRP) 值,该值定义划分位时间的“时间量子”(TQ)。它们适用于3 或4段,如图2所示;一个用来同步,另外数个用于传播延 迟(PROP)以及相位段1和2(PS1和PS2)。PS2和总TQ表示采 样点位置。
第1步:匹配时钟、预分频器和数据速率 对于给定的数据速率来说,第一步是检查如何组合时钟和 BRP,才能让TQ为整数。1 Mbps示例如表1所示。该例采用 ADI ADSP-BF548 Blackfin®微处理器,内置CAN控制器。采 用典型系统时钟(fsclk)值,TQ整数值以粗体显示(用于1 Mbps 的有效时钟/BRP组合)。
表1. 用于1 Mbps的时钟和BRP组合第2步:位段配置
下一步是定义位段,并将采样点设得尽可能晚。对于表1中的每个有效选项,SYNC段必须允许有一个TQ,并且TSEG2 (PS2)段必须适应CAN控制器处理时间(只要BRP大于4,BF548就要低于1 TQ)。TSEG1 (PROP + PS1)为16 TQ(最大值)。
图3. 1 Mbps时最大传播延迟的可能BF548位段图3显示1 Mbps以及尽可能新的采样点时ADSP-BF548的可能 配置。除5 TQ总和外的所有配置均为至少85%采样点,但 10 TQ时可达最佳值,此时要求fsclk = 50 MHz且BRP = 5。
第3步:计算总线长度 最后一步是确定最佳配置下的最大传播延迟,并决定所选 CAN收发器/隔离的可能电缆长度。对于图3中处理器的最 佳配置,可能的最大传播延迟为900 ns。
图4. 采用ADM3053的隔离式CAN节点,集成isoPower图4中的ADI ADM3053集成CAN收发器、数字隔离器和隔离 式电源。250 ns环路延迟包括隔离器延迟(两个节点为500 ns)。 假定电缆传播延迟为5 ns/m,这意味着采用BF548时总线长 度可达40 m(根据ISO 11898标准的1 Mbps最大值)。
结论
隔离可增加鲁棒性,但同时也会增加发送和接收两个方向 的传播延迟,并且在仲裁时会针对两个节点而加倍。为了 进行补偿,可配置CAN控制器,以便实现可能的最大传播 延迟。这样,即便对节点进行隔离,也有可能实现所需的 数据速率和总线长度。
作者简介
Conal Watterson博士是ADI公司接口与iCoupler®数字隔离器 部的高级应用工程师,工作地点在爱尔兰利默里克。他于 2003年获得爱尔兰利默里克大学(UL)计算机工程学士学 位,并与2005年获得硕士学位,之后在UL的自动化研究中 心(ARC)研究现场总线诊断。他于2010年获得UL工程博士 学位,并在电路与系统研究中心(CSRC)和电信价值链研究 中心(CTVR)研究嵌入式软件的监控和可靠性。
|