何小鹏 赵阳 张洧川 黄轲 唐涛
【摘 要】TTCAN协议在传统CAN基础上引入了时间触发机制,通过时间触发和时分多址的方式提高总线网络数据传输的实时性和确定性,适应更高安全级的网络通讯要求。本文以核电厂安全级仪控设备为对象,设计了基于TTCAN的总线网络架构和应用软件,验证了TTCAN协议应用能够满足安全级仪控系统的总体功能性能要求。
【关键词】TTCAN;时间触发;安全级系统
中图分类号: TP309文献标识码: A文章编号: 2095-2457(2019)16-0005-003
DOI:10.19694/j.cnki.issn2095-2457.2019.16.002
The Research of TTCAN Application in Safety Instrument and Control System of Nuclear Power Plant
HE Xiao-peng ZHAO Yang ZHANG Wei-chuan HUANG Ke TANG Tao
(Nuclear Power Institute of China National Key Laboratory of Reactor System
Design Technology,Chengdu Sichuan 610041,China)
【Abstract】TTCAN protocol introduces time-trigger mechanism on the traditional CAN,which improves the real-time and determinacyperformanceof bus network data transferringby means of time trigger and TDMA,adapting to the higher security level requirements of network communication.Aiming at safety I&C devices of NNP,the architecture and software of bus network based on TTCAN are designed in this paper.It is verified that TTCAN application can meet the functional and performance requirements of safety I&C system.
【Key words】TTCAN;Time-triggered;Safety system
0 引言
CAN(Controller Area Network,控制器局域網)是由德国Bosch公司开发的总线式串行通讯网络协议[1],于1993年正式成为国际标准ISO11898,在汽车、工业控制等领域中广泛应用。随着总线网络大流量、强实时、高可靠等需求的不断提高,Bosch公司在ISO 11898基础上制定了TTCAN协议[1],即时间触发控制器局域网,通过引入时间触发机制,提高总线网络数据传输的确定性和可靠性。2004年,国际标准委员会发布了关于TTCAN总线技术的标准ISO 11898-4[2]。
随着电子和通讯技术的发展,核电厂仪控系统及设备已主要采用全数字化技术实现,现场总线也逐渐成为其中重要的数据传输方式。核电厂安全级仪控系统,作为反应堆运行、控制的关键系统,承载大量、周期性的反应堆运行安全关键数据传输,要求网络通讯满足传输速率和响应时间要求,实时性强;同时,要求数据传输完整、可靠,避免冲突和丢包,以确保整个反应堆系统的安全、稳定运行。TTCAN是基于CAN的高层协议,在传统CAN协议基础上引入了时间触发机制,通过时间触发和时分多址结合的方式进行通讯,从而提高总线网络数据传输的实时性和确定性,同时提高总线网络的带宽利用率,能够更好地满足核电厂安全级仪控系统高速率、高实时、高可靠的总线网络数据传输需求。
1 TTCAN协议研究
TTCAN协议遵循ISO 11898-1定义的标准CAN协议,其物理层和数据链路层与CAN相同。TTCAN是CAN的扩展,在传统CAN基础上增加了会话层,引入时间触发机制,在非破坏性“逐位仲裁”机制的基础上采用时分多址(TDMA)的方式[3]实现总线通讯。
1.1 时间触发
TTCAN协议的时间触发机制包括两层含义[4]:
1)Level1总线网络中各节点建立各自的本地时钟,并通过时间主节点发送特定ID的参考消息实现各节点之间的时钟同步,即各节点每收到一次参考消息,本地时钟就被同步一次;在本地时钟同步的基础上,各节点按照系统同步时间通讯表(即系统矩阵)的调度安排,在规定的时间窗内完成相应的任务,从而实现周期性地传输消息。
2)Level2在本地时钟基础上产生一个系统全局时钟。
TTCAN的时间触发机制通过全局时钟驱动,在预先设定的时间触发各种系统活动,使得系统的行为不仅在功能上得到确定,在时间上也是确定的。系统中各个节点利用时分多址(TDMA)的原理分时复用总线带宽,每个节点在各自设定的时间范围内完成相应的任务,不会产生带宽争用情况,从而有效地避免了延迟和抖动,使得整个系统稳定、可靠。
1.2 系统矩阵
TTCAN总线网络设计时,需要先制定网络中所有节点消息的系统矩阵。系统矩阵又称为“静态调度表”,TTCAN协议通过系统矩阵对总线网络中各节点的通讯时间进行划分,各节点在设定的时间片内完成信息传输[2]。总线网络通讯过程中,各节点在时钟同步的条件下按照预先设计的系统矩阵来轮流获得总线使用权,并在规定的时间窗中完成相应任务,避免总线冲突,从而保证总线网络通讯过程中周期型消息的实时性和可靠性。
TTCAN协议的系统矩阵结构如图1所示,系统矩阵的整个长度称为一个矩阵周期,由多个基本周期组成。每个基本周期对应系统矩阵的一行,從参考消息开始,到下一条参考消息结束。ISO 11898-4中规定,level1功能下的系统矩阵行数最多不能超过25,即64行;系统矩阵可以由一个基本周期组成,即为单行矩阵。
1.3 信息和时间窗
TTCAN总线网络传输的信息可分为周期型消息和非周期型消息[5]。周期型信息通常是对系统较重要的、需要周期发送的信息,对实时性要求较高。周期型信息采用时间触发方式进行传输,并且在规定时间窗内只发送一次,不与总线上其他消息争夺总线使用权;非周期型信息是指没有固定传输周期的信息,一般对实时性要求不高。非周期型信息在规定的时间段内由事件触发,需与其他的非周期型信息互相竞争,争夺总线使用权。
TTCAN协议中,系统矩阵的每个基本周期由多个时间窗组成,即对应系统矩阵的列。时间窗可分为独占窗、仲裁窗和自由窗三种类型[6]:独占窗用于发送周期型信息,每个节点只允许发送一条周期型信息,并且不允许发送失败的消息重发;仲裁窗内允许多个节点发送多条非周期型信息,相互竞争,通常也不允许发送失败的消息重发;自由窗作为系统扩展时使用。
1.4 参考消息
参考消息是特殊的周期型信息,总线网络中各节点的本地时钟均通过时间主节点发送的参考消息进行同步。参考消息必须准时、可靠,才能保证系统矩阵的正常调度运行。通常将参考消息优先级应设为最高,并且在参考消息的发送时间窗内应禁止总线网络上的其他信息的传输。
TTCAN协议中规定,参考消息不仅用于时钟同步,而且要求其数据场中必须有一个字节用于反应其在系统矩阵中所处的行数。参考消息中相关字节的内容及格式如表1所示,第7位为时间主节点所发送的同步事件标志;第5~0位表示该条参考消息所在系统矩阵的行数。
2 基于TTCAN的总线网络设计
以核电厂典型的安全级仪控设备为对象,设计基于TTCAN的总线网络架构。
2.1 网络结构设计
安全级仪控设备内部涉及多机箱通道间的总线网络数据传输,根据其功能特点,网络结构采用具有4个网络节点的总线型拓扑结构,如图2所示,各个节点通过广播方式向其他节点传输数据。
设置1号节点作为总线网络中的主节点,定时发送参考消息。
2.2 系统矩阵设计
安全级仪控设备内部仅传输周期型的安全关键数据,周期均为30ms,包括功率信号、温度信号、压力信号、水位信号、驱动状态信号和工况状态信号。根据安全级仪控设备通讯特性,制定如图3所示的系统矩阵。
根据系统矩阵结构的定义,该网络中只有一个基本周期,所有周期型信息均在一个基本周期内按照图3中的顺序依次通过总线网络进行传输。
2.3 时间窗设计
总线网络中传输的数据帧格式采用标准帧格式,每个数据帧固定携带8字节的数据场。总线网络中总线通讯波特率为1Mbps,对应的位时间为0.001ms。标准格式下数据帧所占用的总线位数根据公式1进行计算:
其中,Sm表示数据场中的数据字节数。
由于总线上所有的数据帧均采用标准帧格式,数据场长度固定为8字节,因此,每个数据帧占用的总线位数约为131bits,在总线上占用的总位时间约为0.131ms。为保证信息传输完成,时间窗的长度不能小于上述的总位时间;同时,时间窗的长度不能大于信息周期,即时间窗的长度应不小于0.131ms,并且应不大于30ms。因此,为保证总线网络一定的总线带宽占用率,将系统矩阵的时间窗长度定义为1ms。定义时间窗长度后的系统矩阵结构图如图4所示。
2.4 参考消息设计
根据2.2节中系统矩阵设计,总线网络中只有一个基本周期,并且参考消息作为总线网络中4个节点时间同步的基准,为保证其占用总线的时间尽可能短,参考消息数据字节的长度设计为1个字节,而该字节只规定同步事件的标志位。
参考消息由主节点定期发出,当非主节点接收到该参考消息后进行时钟同步,并根据2.3中时间窗的设计,完成规定的信息发送。该参考消息在总线中的传输时间根据公式1计算为0.0634ms,如果在设计中不考虑参考消息对系统同步时间影响的补偿,则非主要节点的时钟将比主节点延迟0.07ms左右。
3 软件设计
根据上述设计,设计TTCAN总线网络中主节点软件和非主节点软件。
3.1 主节点软件设计
主节点软件包含微处理器初始化子程序、CAN协议控制器初始化子程序、中断处理子程序以及微处理器主程序。
微处理器初始化子程序完成微处理器的看门狗、中断、I/O端口、定时器等的初始化工作;CAN协议控制器初始化子程序完成协议控制器的工作模式、验收滤波器和屏蔽寄存器以及总线定时的配置工作;中断处理子程序包括定时中断子程序和外部中断子程序,定时中断子程序完成程序周期以及信息发送周期的定时中断处理,外部中断子程序完成总线数据接收中断处理,程序流程图如图5所示。主节点微处理器在完成初始化工作后,需要发送参考消息并启动相关定时器后,进入主程序循环,程序流程图如图6所示。
3.2 非主节点软件设计
非主节点软件的微处理器初始化子程序、CAN协议控制器初始化子程序的流程与主节点软件相同,而中断处理子程序、微处理器主程序与主节点软件不同。非主节点的中断处理子程序流程图如图7所示,微处理器主程序流程图如图8所示。
4 结论
本文研究了基于时间触发的TTCAN协议,并以核电厂安全级仪控设备为对象,进行了基于TTCAN的总线网络架构设计和软件设计。通过搭建实物环境,并借助CANOE测试工具,对总线网络设计和软件设计进行了测试验证。测试结果表明,基于TTCAN协议的总线网络数据传输具有良好的实时性和确定性,传输性能稳定可靠,能够满足核电厂安全级仪控系统的总体功能性能要求。
【参考文献】
[1]RYAH C,HEFERNAN D,LEEN G.Clock synchronization on multiple TTCAN network channels[J].Microprocessors and Microsystems,2004,28(3):135-146
[2]Road Vehicles-Controller Area Network(CAN)-Part 4:Time-Triggered Communication,ISO 11898-4,2004.
[3]Hartwich F,Fuhrer T,Hugel R,et al.Timing in the TTCAN network.Eighth International Conference,Las Vegas,2002.
[4]Hartwich,Muller B,Fuhrer T,et al.CAN Network with Time-Triggered Communication.Sevevth International CAN Conference,Amsterdam,Netherlands 24-25 October.
[5]刘鲁源,万仁君,李斌.基于TTCAN协议的网络控制系统静态调度算法的研究[J].控制与决策,2004,19(7).
[6]Jose Fonseca,Fernanda Coutinho,Jorge Barreiros.Scheduling for a TTCAN Network with Stochastic Optimization Algorithm DET/ieeta-UmiversidadeAveiro,Portugal,Instituto Supp.