0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何针对给定应用实现对节点的优化配置

电子设计 来源:电子工程网 作者:Conal Watterson博士 2021-06-28 17:43 次阅读

作者: Conal Watterson博士

简介

控制器局域网络CAN)可在多个网络站点之间提供强大的通信能力,支持多种数据速率和距离。CAN具有数据链路层仲裁、同步和错误处理等特性,广泛用于工业仪器仪表和汽车应用之中。在ISO 11898标准的框架下,借助分布式多主机差分信令和内置故障处理功能,DeviceNet、CANopen等多种协议针对物理层和数据链路层规定了相应的实现方式。本文旨在描述如何针对给定应用优化设置,同时考虑控制器架构、时钟收发器、逻辑接口隔离等硬件限制。文章将集中介绍网络配置问题——包括数据速率和电缆长度——说明何时有必要对CAN节点进行重新配置,以及如何从一开始就实现对节点的优化配置。

逻辑接口隔离

对于恶劣的工业和汽车环境,可通过隔离CAN收发器的逻辑接口进一步增强系统的鲁棒性,允许接地节点之间出现较大的电位差,同时提供抗高电压瞬变能力。 将CAN收发器与数字隔离器集成起来即可形成隔离式CAN节点。 ADM3052、ADM3053和ADM3054隔离式CAN收发器提供多种接口供电选项。 对于DeviceNet网络,隔离侧可通过总线供电;因此,ADM3052集成了一个线性调节器,以便利用24 V总线电源提供5 V电源。ADM3053(如图1所示)集成了一个isoPower DC-DC转换器,用于驱动收发器和数字隔离器的总线端。已有一个隔离式DC-DC转换器能够在隔离栅上提供电源的系统可以采用ADM3054,后者只集成了数字隔离器和CAN收发器。

图1. 隔离式CAN节点(ADM3053收发器由isoPower DC-DC供电)

传播延迟的影响

部署一个CAN节点需要一个隔离式或非隔离式CAN收发器,以及一个搭载有相应协议堆栈的CAN控制器或处理器。可以使用独立式CAN控制器,甚至可以使用不带标准协议堆栈的控制器,但是,CAN应用中使用的微处理器可能已经包括CAN控制器。在任一情况下,都必须对CAN控制器进行配置,以调和总线上的数据速率和时序,而硬件振荡器则用于控制器。

随着电缆长度的增加,信号中的高频组分衰减,因此,长距离条件下的数据速率都有限。 总线是一种多主机,因此,所有节点都可以尝试同时传输,仲裁取决于物理层信令。传播延迟也会随电缆长度而增加,可能对节点间同步和仲裁形成干扰。

CAN总线上的差分信号可能处于两种状态之一:主动(逻辑0,信号线路CANH和CANL之间存在一个差分电压)或被动(逻辑1,无差分电压,所有CAN收发器输出均为高阻抗)。如果两个节点尝试同时传输,则主动位传输会覆盖同时进行的被动位传输,因此,在传输时,所有节点都必须监控总线状态,如果在传输被动位时发生覆盖,则要停止传输。如此,传输主动位的节点赢得仲裁,如图2所示。

图2. 两个CAN节点之间的仲裁逻辑

CAN 2.0b定义的是数据链路层的实现方式,对用于传输的CAN帧结构进行了规定。一个包含消息ID的仲裁字段启动消息传输。较低的消息ID(开头的零较多)将拥有更高的优等级,因此,在传输消息时,相应节点赢得仲裁的概率更大。

尽管CAN节点与总线传输同步,但是,由于两个同时传输的节点之间存在传播延迟,所以不会完全同步。要让仲裁切实发挥作用,传播延迟不能过大,否则,较快的节点可能在检测到较慢节点传输的位状态之前就对总线进行采样了。最差条件下的传播延迟为两个最远节点间延迟的两倍。在图3中,如果节点A和B是总线上相隔最远的节点,则至关重要的参数是双向传播时间PropBA与TPropBA之和。

图3. 实际条件下两个CAN节点间的仲裁(含传播延迟)

总传播延迟由通过电缆、两个CAN控制器I/O和两个CAN收发器的双向传播时间构成。CAN控制器I/O并不是传播延迟的主要贡献者,往往可以忽略不计,但进行彻底评估时必须予以考虑。循环时间由从TxD到CANH/CANL、再回到RxD的传播延迟构成。电缆传播延迟取决于电缆和距离,典型值为5 ns/m。

在较低数据速率下,允许的位时间较长,因此,传播延迟(及电缆距离)也可能变长。在最高标准CAN数据速率(即1 Mbps)下,允许的传播延迟更受限制,尽管ISO 11898-2标准规定,在总线长40米时,可支持1 Mbps的数据速率。

隔离的影响

隔离条件下,在计算双向传播延迟时,必须考虑额外的因素。相比光耦合器,数字隔离器可减少传播延迟,但即使是最快的隔离式CAN收发器在这方面也与较慢的非隔离式收发器相当。如果允许的总传播延迟保持不变,隔离系统中,最大电缆长度较短,但可以重新配置CAN控制器,以提高允许的总传播延迟。

传播延迟的补偿

为了补偿因较长总线或隔离增加的传播延迟,必须为CAN控制器设置与时序和同步相关的特定参数。在配置控制器时,不只是选择一个数据速率,而是要设置决定着控制器所用位时间的变量。面向振荡器或内部时钟的波特率预分频器(BRP)设置时间量子(TQ),位时间为TQ的倍数。振荡器的硬件选择,以及BRP和每位时间TQ数的软件配置设定数据速率。

控制器的位时间分为三个或四个时间段,如图3所示。每位时间的TQ总数包括一个同步以及传播延迟(PROP)、相位段1 (PS1)和相位段2 (PS2)的设定数量。有时候,会把PROP和PS1加起来。配置调节采样点,以支持传播延迟和再同步。

把采样点设在位时间的稍后部分可以支持更长的传播延迟,但就如总数据速率一样,采样点取决于其他时序变量,这些变量都有自己的限制。例如,内部时钟/振荡器可能固定不变,只能使用整数BRP和TQ数。因此,特定电缆长度要求的理想数据速率可能根本无法实现,因此,必须缩短电缆,或者降低数据速率。

再同步会使PS1加长,PS2缩短,加长量和缩短量为同步跳宽(SJW)规定的TQ数,因此,PS2不得短于SJW。 SJW所需TQ数取决于CAN控制器的时钟容差,对于SJW和PS2,晶振一般支持最小TQ数。

CAN控制器的配置

为了实现节点间时序可靠、同步可靠的稳健网络,系统必须能承受所选数据速率和CAN控制器时钟条件下的传播延迟。如果不能,可以选择降低数据速率、缩短总线或者使用不同的CAN控制器时钟速率。配置过程包括以下三个步骤。

第一步: 检查时钟和预分频器——匹配数据速率

先核实在给定目标数据速率和CAN控制器时钟条件下,有哪些可能的配置。TQ间隔必须基于时钟和各种BRP值计算,可能组合只有那些TQ间隔为位时间的整数倍的组合。根据所处系统设计阶段,也可能考虑其他CAN控制器时钟速率。在表1所示计算示例中,给定的最大数据速率为1 Mbps,使用的是一个Microchip® MCP2515独立CAN控制器和一个内置CAN控制器的ADSP-BF548 Blackfin 处理器。MCP2515 fOSC 取决于所使用的外部硬件振荡器,而ADSP-BF548 fSCLK 则取决于硬件CLKIN和内部PLL设置(VCO的CLKIN乘数,SCLK的VCO分频)。只有CAN控制器时钟和BRP(整数个TQ)的某些组合支持1 Mbps的数据速率,如粗体所示。 这会限制位时序的设置,因此一旦选择某个总线数据速率,只有部分选项可用。

表1. 给定f和BRP时1 Mbps速率下的TQ数

第二步: 确定位段配置

下一步是确定每个位段要求的TQ数。最困难的情况是在1 Mbps的数据速率下支持最大传播延迟,例如,电缆长40米,隔离式节点。理想情况下,应对位时间段进行配置,使采样点在位中尽量晚。在表1中,对于每个整数的TQ总数,一个TQ必须提供给SYNC段,PS2(或TSEG2)段必须足够大,以容纳CAN控制器信息处理时间(只要BRP大于4,MCP2515为2 TQ,ADSP-BF548为小于1 TQ)。另外,对于MCP2515,PROP和PS1最多可以各有8 TQ;对于ADSP-BF548,TSEG1 (PROP + PS1)最多可以为16 TQ。

图4和图5分别展示了MCP2515和ADSP-BF548的可能总TQ配置,对于1 Mbps速率条件下的有效时钟和BRP组合,可支持最近采样点。MCP2515的最佳TQ总数为19,要求38 MHz的硬件振荡器和1的BRP。对于ADSP-BF548,TQ总数为5的情况除外,所有配置至少为85%采样点,但最佳设置是10 TQ,要求fSCLK = 50 MHz且BRP = 5。

图4. MCP2515的可能TQ总数配置(速率为1 Mbps,最大传播延迟)

图5. ADSP-BF548的可能TQ总数配置(速率为1 Mbps,最大传播延迟)

第三步: 使收发器/隔离延迟和总线长度与配置相匹配

在帮助CAN控制器实现最佳采样点以后,最后一步是比较允许的传播延迟与使用的CAN收发器/隔离器和总线长度。设ADSP-BF548最佳配置为10 TQ(fSCLK= 50 MHz,BRP = 5),可能实现的最大传播延迟为900 ns。 对于集成隔离式电源的ADM3053隔离式CAN收发器,数据手册中的最大环路延迟(TxD关闭,接收器处于非活动状态)为250 ns。必须使其增加一倍(500 ns),以便同时支持总线最远两端的两个节点处的发射延迟和接收延迟。

设电缆传播延迟为5 ns/m,ADSP-BF548可以支持40米的总线长度(根据ISO 11898规范,此为1 Mbps条件下的最大值),ADSP-BF548的位时间总共为10 TQ,TSEG2位段仅1 TQ。实际上,略早的采样点就够了,因为一个节点上的极端收发器传播延迟甚至很可能导致简单的再传输(由数据链路层CAN控制器自动处理),但是,由于CAN控制器I/O与CAN收发器之间存在小延迟,因此建议把采样点配置到尽量靠后的点。

结论

隔离有利于提高鲁棒性,但同时也会增加发射和接收两个方向的传播延迟。必须使该延迟增加一倍,以支持两个节点参与仲裁。 如果系统允许的传播延迟是固定的,在增加隔离措施之后,可以减少电缆长度或数据速率。另一种方法是重新配置CAN控制器,使其支持最大传播延迟,以保证支持所需的数据速率和总线长度,即使是在节点采取了隔离措施的条件下。

References

控制器局域网络(CAN)收发器

数据隔离器

隔离式控制器局域网络(CAN)—视频

Marais, Hein. 何计算控制器参数使隔离式CAN(控制器局域网络)网络以1 Mbps的速度运行

O‘Brien, Maurice. 设计适合工业、电信和医疗应用的鲁棒隔离式I2C/PMBus数据接口。《模拟对话》,第48卷第3期,2014。

Watterson, Conal. AN-1123应用笔记。控制器局域网络(CAN)实施指南。ADI公司,2012年。

作者简介

Conal Watterson博士现为ADI公司接口与隔离技术部门(ITG)的收发器应用工程师,在爱尔兰利默里克工作。他于2003年获得利默里克大学计算机工程学士学位,随后在利默里克大学自动化研究中心(ARC)从事现场总线诊断研究工作,2005年获工程学硕士学位。其后在利默里克大学电路与系统研究中心(CSRC)和电信价值链研究中心(CTVR)研究嵌入式软件的监控和可靠性,于2010年获博士学位。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 收发器
    +关注

    关注

    10

    文章

    2968

    浏览量

    104770
  • 转换器
    +关注

    关注

    27

    文章

    8200

    浏览量

    141733
  • 控制器
    +关注

    关注

    112

    文章

    15214

    浏览量

    171138
收藏 人收藏

    评论

    相关推荐

    LED节点添加、配置、连线等基本开发过程

    整个教程通过5个步骤,演示了节点添加、配置、连线等基本开发过程,实现了LED点亮, 闪烁, 流水灯等功能。
    发表于 08-18 10:57 963次阅读

    PLC控制的多段速度给定

    用基本操作面板进行手动速度给定方法简单,对资源消耗少,但这种速度给定方法对于操作者来说比较麻烦,而且不容易实现自动控制,而PLC控制的多段速度给定和通信速度
    发表于 03-10 15:52 2063次阅读
    PLC控制的多段速度<b class='flag-5'>给定</b>

    优化CAN节点位时序以适应数字隔离器传播延迟

    标准的1 Mbps最大值)。结论隔离可增加鲁棒性,但同时也会增加发送和接收两个方向 的传播延迟,并且在仲裁时会针对两个节点而加倍。为了 进行补偿,可配置CAN控制器,以便实现可能的最大
    发表于 10-16 17:00

    优化CAN节点位时序以适应数字隔离器传播延迟

    方向的传播延迟,并且在仲裁时会针对两个节点而加倍。为了进行补偿,可配置CAN控制器,以便实现可能的最大传播延迟。这样,即便对节点进行隔离,也
    发表于 10-22 16:40

    键合图法在传感器优化配置的应用

    键合图法在传感器优化配置的应用
    发表于 01-09 17:47 20次下载
    键合图法在传感器<b class='flag-5'>优化</b><b class='flag-5'>配置</b>的应用

    基于MCP2502X的CAN总线节点设计

    针对当前CAN总线及J1939协议在汽车电子中的广泛应用,给出一种通过配置在低成本CAN I/O扩展器MCP2502X/05X器件上实现J1939协议的CAN总线节点的设计方法。详细介
    发表于 12-29 18:08 28次下载

    无线传感网络节点能效性测量优化方法

    摘要:本文研究了无线传感网络节点能效性测量优化问题。给出了无线传感网络分簇式拓扑结构和节点概率检测模型,建立了网络测量覆盖率指标和通信能耗指标。遗传算法和微粒群算法在节点能效性测量
    发表于 02-16 15:14 25次下载

    优化的资源配置算法在网格计算系统中的实现

    优化的资源配置算法在网格计算系统中的实现
    发表于 01-07 20:49 0次下载

    基于节点位置与剩余能量的LEACH协议优化_余成波

    基于节点位置与剩余能量的LEACH协议优化_余成波
    发表于 03-19 19:28 0次下载

    基于再生码的分布式存储节点修复优化

    分布式存储系统为了保证可靠性,会采用一定的存储冗余策略,如多副本策略、纠删码策略.纠删码相对于副本具有存储开销小的优点。但节点修复网络开销大.针对修复网络开销优化。业界提出再生码和以简单再生码为代表
    发表于 12-26 19:11 1次下载
    基于再生码的分布式存储<b class='flag-5'>节点</b>修复<b class='flag-5'>优化</b>

    鲁棒优化的风储联合配置

    针对电网规划巾的风电功率波动和储能配置问题,从电网建设、运行、维护角度,分析了风力发电效益与风储系统成本的组成元素,构造了考虑规划年内全局经济性的优化目标;利用鲁棒优化方法,量化了储能
    发表于 02-28 15:44 2次下载
    鲁棒<b class='flag-5'>优化</b>的风储联合<b class='flag-5'>配置</b>

    光储微电网优化配置

    在电力市场环境下,考虑需求侧响应和储能系统对微电网的影响,通过合作博弈的方式进行系统联合优化配置。提出一种在需求侧用户适当转移负荷的情况下实行分时电价的微电网运行策略,用于实现微电网收益最大化和最优
    发表于 03-02 14:20 3次下载

    电能质量监测点优化配置研究

    了一种基于状态估计和多种群改进遗传算法的电能质量监测点优化配置方法,以较少的监测装置实现了对配电网的全面监测,达成了系统性能和经济成本的优化优化
    发表于 03-30 15:44 1次下载
    电能质量监测点<b class='flag-5'>优化</b><b class='flag-5'>配置</b>研究

    基于节点分布自适应的WSN覆盖控制优化策略

    针对传统节点部署策略适应性差、节点分布密度计算复杂等问题,提出基于节点分布密度自适应和冗余节点混合调度的WSN覆盖控制
    发表于 07-06 15:02 25次下载
    基于<b class='flag-5'>节点</b>分布自适应的WSN覆盖控制<b class='flag-5'>优化</b>策略

    基于C++编译器的节点融合优化方法

    LLVM是以C十十编写的架构编译器的框架系统,支持多后端和交叉编译,用于优化程序的编译时间、链接时间、运行时间和空闲时间。节点融合是一种简单有效的优化方法,其基本思想为将多个节点
    发表于 06-15 14:29 19次下载