APP下载

汽车TTCAN实时性分析及其可视化研究*

2011-02-27王书举张天侠张国胜

汽车工程 2011年2期
关键词:实时性总线仲裁

王书举,张天侠,张国胜

(东北大学机械工程与自动化学院,沈阳 110004)

前言

CAN(controller area network)总线技术已广泛应用于汽车控制网络,传统CAN总线的事件触发机制和固定优先级调度算法在较差传输条件下存在着消息的传输不可预知、低优先级消息易阻塞、网络资源利用率低等不足[1],为解决上述问题,在CAN协议引入时间触发机制,形成TTCAN(time-triggered CAN)协议国际标准,TTCAN作为CAN的延伸可很容易地应用于诸多领域的CAN实时系统。TTCAN协议可同时处理时间触发和事件触发,能保证控制系统时间触发部分通信行为具有更高的确定性、可靠性和响应快速性[2]。TTCAN网络事件触发部分沿用CAN的非破坏性仲裁来处理随机性信号,信息的传输响应时间和传统CAN一样存在不确定性,因此须对随机信息进行实时性分析。文献[3]和文献[4]中采用TTCAN双相基本周期结构,通过计算异步相内能容纳随机信息的个数来计算随机信息响应时间,该计算方法在系统信息数据长度不相同时对信息的响应时间计算结果存在较大误差。

CAN辅助设计工具能为大信息量、多优先级信息通信的车辆系统 CAN总线设计带来很大便利,可节省集成测试的大量工作量,国外关于CAN网络辅助设计的研究比较成熟。如Volcano公司以文献[5]和文献[6]的实时分析方法为理论基础开发的商用CAN调度分析软件,TTTech公司开发的TTCANplan调度表生成工具等。国内目前缺少系统化、高性能的辅助分析工具。

文中对上述问题进行了深入地探讨,研究了TTCAN双相基本周期结构中随机信息响应时间分析方法,并基于Visual C#平台开发了汽车TTCAN实时性分析可视化软件。

1 TTCAN协议

1.1 TTCAN协议

TTCAN协议本质上是基于表的静态调度,网络运行时,时间意义上的主节点基于本地时间控制器发送包含全局时间信息的参考帧。TTCAN网络要传输的信息及其发送时间都被预先定义在调度表中,由如图 1所示的系统矩阵来管理。系统矩阵由多个基本周期(BC)组成,基本周期为连续两个同步信息之间的时间段,它又由多个时间窗构成,信息的传输都是在时间窗口里进行。时间窗口的类型有同步时间窗、独占窗、仲裁窗和空闲窗[2]4种。

(1)独占窗只允许某一个指定的单独信息使用,别的信息不能抢占,同步时间窗属于独占窗。

(2)仲裁窗可由两个以上的节点使用,多个节点的信息在此类窗口里采用CAN协议的仲裁机制竞争发送。当多个仲裁窗连续出现时可进行合并,组成一个大的仲裁窗。

(3)空闲窗里目前没有信息被调度,预留给未来网络扩展。

1.2 TTCAN系统矩阵结构规划

由于汽车TTCAN系统中周期性信息和随机性信息共存,须合理规划独占窗和仲裁窗建立系统矩阵以获得良好的系统性能,这里将系统矩阵规划分为3个步骤。

(1)规划基本周期 由于TTCAN通过禁止传输不能在当前仲裁窗完成传输的信息来保证随机信息不影响周期信息的传输[2],且仲裁窗内的信息量小于时间窗,所以,将仲裁时间窗合并为组合窗,组成异步相将最大限度地利用系统带宽并提高随机信息的实时性。另外,考虑到实现因素,将基本周期规划为同步基准、同步相和异步相 3个区域[3-4],同步基准用来传递同步信息,同步相用来传递周期性信号,异步相用来传递随机性信号,如图 2所示,其中TBC为基本周期长度,TTM为同步时间窗大小,LS和 LA分别为同步相和异步相长度。

(2)确定系统矩阵各列宽度 取系统各列宽度相同,列宽应满足系统最大信息的最大传输用时[5]:

式中:L为同步相列宽;tCm为CAN标准信息帧m在总线上最坏传输时间;τbit为总线传输位用时;dm为信息m数据域的字节数。

(3)确定基本周期的个数 确定矩阵的行和列及各个基本周期内同步相的时间窗序列,即具体地构建系统矩阵。周期性信号具有确定的传输时刻,可采用均匀装载(AL)算法[4]进行调度。设共有 N个周期信息,P为周期个数,周期集合T={T1…Ti…TP},i∈[1,P],其中周期为Ti的信号为 ni个,取基本周期TBC为各周期的最大公约数,矩阵周期 TMC为各周期的最小公倍数,则系统矩阵的基本周期个数: NBC=TMC/TBC。

定义:各信号周期值与基本周期的比值 ki为

同步相内列数即时间窗的个数SP为

要实现周期性信息可调度,须满足条件:

整个TTCAN系统是否可调度尚须进行随机信息可调度性分析。

1.3 TTCAN系统信息ID规划

TTCAN独占窗不存在多信息竞争,而当仲裁窗中出现多信息冲突时,仍采用CAN无破坏性优先级仲裁机制,总线空闲时,任何信息均可申请发送,检测到冲突时,根据优先级进行仲裁,最高优先级信息获得总线使用权。优先级由信息的ID决定,ID越大优先级越低,信息的 ID被事先离线定义,全网内信息ID值唯一。本文中ID值的分配采用比率单调(ratemonotonic,RM)算法,它规定信息的优先级与信息产生的频率成正比,对于随机信息,取信息连续两次出现的最小时间间隔,最小间隔越大,信号的优先级越低[6]。

2 TTCAN网络实时性分析

信息的实时性应考虑所有可能的情况,信息从产生到传输至目的节点的响应延迟应小于其延迟期限,即信息网络实时性要求应满足条件为

式中:tRm为信息最坏响应时间;tDm为延时期限;tJm为发送信息m的软件抖动;tWm为信息帧m排队等待高优先级信息传输花费的时间;tBm为信息 m被阻塞的时间。

2.1 同步相周期性信息实时性分析

TTCAN独占窗分配给指定的周期信息传输,独占窗内不存在冲突,信息不被阻塞,同时TTCAN采用禁止重发机制,则同步相周期信息的tWm=0,tBm= 0,即tRm=tCm。

2.2 异步相随机信息实时性分析

随机信息产生时间无法预先规划,分析其实时性时要考虑其最坏延迟情况,随机信息 m可能被低优先级信息、时间间隙、触发信息和同步相所阻塞,还要等待高优先级信息传输,随机信息最坏传输条件如图3所示,图中TM为同步触发信息,α为防止随机信息干涉到触发信息而保留的时间间隙,AMi为上一基本周期异步相内最后传输的比信息 m优先级低的随机信息。

基于以上分析,可得TTCAN随机信息实时响应分析模型[6-7]为

式中:lp(m)为比信息m优先级低的信息集合; hp(m)为比信息m优先级高的随机信息集合;mit()为信息产生的最小时间间隔;A为随机信息集合。

3 汽车控制系统TTCAN网络实时性分析及可视化设计

3.1 汽车动力传动控制系统信息模型

汽车动力传动控制系统信息的实时性和确定性要求高,消息必须在规定时间之内完成传输。中高档汽车的动力传动控制系统主要包括[6]:发动机控制系统、防抱制动系统、四轮转向控制系统和悬架控制系统。系统共有 33个周期信息和 12个非周期性信息。周期信息特性如表1所示,非周期信息(a,b, c为优先级):a类(制动油计量器A1,制动油指示器A2,液压执行器油温传感器 A3,发动机转速计数器A4);b类(进气口温度传感器A5,散热器温度传感器A6,探测传感器 A7,燃油计量器 A8,散热器温度计量器A9,液压执行器过滤传感器 A10,速度计A11);c类(发动机机油传感器 A12)。周期信息截止期即为其周期,随机信息截止期为其最小时间间隔,a、b、c类分别为5、20、100ms。

表1 汽车控制系统总线周期信息

3.2 TTCAN周期信息调度设计

采用与文献[3]和文献[8]相同的参数设置,每个信号传输的数据均为两个字节,波特率为 1Mb/s。

由表1可知,T={2,4,6},根据AL算法可知, TBC=2ms,TMC=6ms,TTM=0.063ms,L=0.073ms, S3=20,LS=1.46ms,可实现周期信息调度。系统矩阵周期由 3个基本周期组成,如图 4所示。

3.3 TTCAN实时性分析可视化设计

TTCAN系统中周期信息传输不存在阻塞和排队等待时间,因此TTCAN周期信息很容易满足实时性要求[3-4]。随机信息排队等待时间计算公式(6)为多步迭代公式,当系统存在大数据量、多优先级信息通信时,其计算量较大,因此文中通过设计辅助分析软件来分析TTCAN随机信息响应延迟,并实现分析结果的可视化。实时性分析软件的设计功能包括:管理输入信息;根据信息ID对信息优先级自动排序;信息阻塞时间及排队等待时间的迭代计算;处理计算结果存入数据库并发送给输出显示界面。

采用Visual C#软件实现TTCAN实时性分析软件输入界面如图 5所示,通过输入界面可实现信息及TTCAN系统参数的输入、修改和保存,波特率参数设置,输入信息的图表显示等功能。

TTCAN实时性分析软件输出显示界面可实现信息实时性参数分析结果图表显示,不同选项下的信息参数曲线与图形显示及分析结果的输出。

采用设计的实时分析软件对汽车动力传动控制系统TTCAN随机信息进行实时性能分析,波特率设置为1Mb/s,各节点软件抖动时间根据现场情况设置为 0.2~1ms不等[6]。点击仿真按钮,信息分析结果输出包括:信息的ID、周期、截止期、排队等待时间、抖动响应时间、信息是否可调度和响应时间裕度等参数,绘制各随机信息抖动响应时间与最坏响应时间的柱形图对比,如图 6所示。

从图6中可以看出,对TTCAN随机信息的最坏传输时间随着优先级的降低会有较大的增加,系统设计时应根据其时间响应合理分配信息ID,应赋予实时性强的信息较高的优先级,最终保证所有信息均满足其实时性要求。

4 结论

基于汽车TTCAN控制系统,提出了TTCAN网络事件触发部分随机信号实时性分析数学模型,针对实时性分析计算中多次迭代所带来较大工作量问题,文中基于Visual C#平台设计了实时性分析可视化辅助分析软件,为汽车TTCAN总线系统的实时性分析提供了有效工具。

[1] Cena G,Valenzano A,Vitturi S.Advances in Automotive Digital Communications[J].Computer Standards&Interfaces,2005,27 (6):665-678.

[2] Leen G,Heffernan D.TTCAN:A New Time-triggered Controller A rea Network[J].Microprocessors and Microsystems,2002,26 (2):77-94.

[3] 刘鲁源,万仁君,李斌,等.TTCAN调度算法及其在汽车控制系统中的应用[J].汽车工程,2005,27(1):60-63.

[4] 曹万科,张天侠,刘应吉.基于混合调度算法汽车TTCAN网络设计及实时性分析[J].中国机械工程学报,2007,15(1):62-66.

[5] Tindell K,Burns A.Guaranteeing Message Latencieson Controller Area Network(CAN)[C].Proceedings of the First International CAN Conference.Mainz,Germany,1994.

[6] Tindell K,Burns A,Wellings.Calculating Controller A rea Network (CAN)Message Response Times[J].Control Eng.Practice, 1995,8(3):1163-1169.

[7] Almeida L,Pedreiras P,Alberto JG.The FTT-CAN Protocol:Why and How[J].IEEE Transaction on IndustrialElectronics,2002,49 (6):1189-1201.

[8] Caval S,Stefano A D,Mirabella O.Mapping Automotive Process Controlon IEC/ISA Field Bus Functionalities[J].Computers in Industry,1996,28(3):233-250.

猜你喜欢

实时性总线仲裁
时间触发通信总线监控技术研究
对不属于仲裁委员会管辖范围的仲裁申请如何处理?
基于CAN/LIN总线的LED车灯控制研究
航空电子AFDX与AVB传输实时性抗干扰对比
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
国际商事仲裁,机构仲裁好还是临时仲裁好?
宝马F02车总线系统