ec20 以太网_某舰炮控制系统中双冗余CAN-以太网网桥热切换的研究

在基于以太网和CAN总线的某型舰炮控制系统研制中,为了提高系统通讯的可靠性,针对CAN-以太网网桥的双冗余机制进行了研究。本文对以太网、CAN总线的故障检测和冗余机制进行了研究,提出了两种网桥冗余方案,并将两种方案的实现原理及优缺点进行了分析。

f99b77de100e936e692fcb42d48481bd.png

以太网、CAN总线技术作为一种较为成熟的技术,取得了越来越广泛的应用。在某型舰炮控制系统研制中,为了贯彻三化要求,对控制系统按照功能进行模块化划分。在此思想的指导下,设计了以CAN-以太网网桥模块、伺服控制模块、监控模块、人机接口模块等核心功能模块为主的控制系统,控制系统内部采用CAN总线进行通讯,系统对外接口采用以太网进行数据通讯。该控制系统网络功能框图见图1。

fb736fbc0ff7bbfb7cd39c4f6f40e99d.png

图1 控制系统网络功能框图

由图1可知CAN-以太网网桥的功能为该舰炮控制系统的中枢,武器系统的指令通过该模块接收然后发送到控制系统内部的各个功能模块,再由各个模块控制被控对象完成相应的动作,控制系统内部的状态信息通过该模块上传到以太网总线。该控制系统在执行一次作战任务时,如果该网桥出现故障或外部线缆出现故障造成不能通讯,则将导致整个系统瘫痪,无法完成作战任务。

在实际的网络系统中,有许多原因可能导致传输通道中断,比如网络堵塞、网线断开、网络接口连接器松动、网络接口硬件电路故障等,造成网络实时性和可靠性降低甚至网络不能工作。然而,系统对网络的要求越来越高,除了满足正常的数据通讯,还要求网络有较高的容错率,而双网冗余就是提高网络可靠性的有效手段之一。

冗余切换机制研究

本网桥连接对象为以太网、CAN总线,所以,下面分别对两者的故障检测及冗余切换机制进行分析。

1 以太网冗余切换机制

冗余切换工作的第一步是故障检测及判断,第二步是完成网络切换。

故障检测的判具主要是对网卡的链路状态检测,即与网卡相连的网络链路是否发生了故障。根据以太网控制器内部的状态寄存器中LINKFAIL位的状态,来进行判断。当DSP接收到以太网控制器的中断信号后,通过读取状态寄存器的值来进行判断是何种类型中断。如果是接收或发送中断,则执行相应的处理程序,如果是网络链路故障,则进行网络切换工作。

故障检测的实现手段有两种方式:查询法、中断法,由于查询法为纯软件手段,且需要关中断、开中断,网络有可能造成数据丢失,以及故障恢复时间长,所以本文采用中断法进行故障检测。中断法检测无丢包现象,且故障能迅速恢复。

网络冗余分冷切换机制、热切换机制,本文采用热切换机制。它对容易出错的硬件设备进行冗余备份,当其中一个设备由于某种原因不能正常工作时,另一个设备马上就可以代替这个设备完成相同的功能。

网络节点设备采用冗余双网卡热切换技术,就是设备具有两个网络适配器并行工作,作为系统与外界进行数据传输的通道,当其中主通道被切断或出现故障时,系统可以检测到错误,并迅速切换到另一个网络适配器上,并将从通道置为主通道。两个网络适配器使用同一个IP地址,对于外部设备同本设备已经建立起来的TCP/IP连接,切换网络适配器能够迅速恢复连接。

2 CAN总线故障检测及切换机制

假定总线上有两个功能相同的CAN节点:CANA、CANB,两者互为备份。两者上电初始化完成以后,CANA、CANB分别向总线上发送一个询问帧,若应答超时,则认为其本身是主机,若在规定的时间内收到对应询问帧的应答帧,可判断出对方是主机,该CAN节点自动设置为从机。

若CANA、CANB同时上电,可能会同时发送询问帧。根据CAN总线仲裁协议,其中1个节点先获得CAN总线的使用权,使它的询问帧发送成功。没有获得CAN总线使用权的节点在收到对方的询问帧后不马上重发询问帧,而是采取退避方法,延时一段时间,使对方产生应答超时。

故障检测机制为:在工作过程中,若从机在规定的时间间隔内没有收到主机的信息或者收到主机报告自己出错的信息,就作为主机故障的判具。

其切换机制基本与开机上电类似,从机检测到主机故障后,把自身置为主机。

双冗余切换方案设计

双网冗余在不同的系统中有不同的实现方式,本文采用热切换机制,对模块实行双冗余备份。方案一是采用双网桥配合一个切换模块实现冗余,方案二采用一个处理器控制两个以太网控制器、两个CAN控制器实现。也可在此基础上稍加改变可采用一个处理器(本文采用DSP)控制、一个以太网控制器、一个CAN控制器、两个以太网物理层、两个CAN总线收发器来实现。

1 双网桥方案

74eb94b920ef82921726da5f6c2a1ddf.png

图2 双网+切换模块方案框图

双网桥方案是指在系统中用两个CAN-以太网网桥,网桥之间通过切换模块连接,两个以太网接口共用一个IP地址,工作时,只有一个网桥工作,另一个网桥作为备份。当网桥A不能正常通讯时,由切换模块切换到网桥B进行通讯,网桥A停止工作。

系统上电后,首先根据CAN总线的仲裁协议完成主网桥的设置,使主网桥处于正常工作状态,从网桥处于备用状态。当主网桥DSP芯片检测到网络故障或CAN总线故障时,发出切换指令,使从机投人正常运行状态,接管对网络和CAN总线的控制。采用这种冗余技术以后,系统的可靠性大大提高,但也存在一些不足之处:

⑴需要设计专门的切换模块,切换模块可能会引入新的故障点,该模块出现任何故障均可导致整个切换工作失败;

⑵在主网桥发生故障时,不便于实现无扰切换,在切换过程当中,可能会丢失数据;

⑶如果主网桥中的以太网控制器或CAN控制器任一个出现故障,即要将从网桥投入工作,主网桥停止同作。

2 单板双冗余网桥方案

6231d2588cf48cb2bde4a7a8b878559d.png

图3 单处理器+CPLD+双网双CAN方案框图

该方案将双冗余网桥集成到一块电路板上,由一个处理器、CPLD、双以太网控制器、双CAN控制器实现双网桥冗余功能。

单处理器控制以太网控制器A、以太网控制器B、CAN控制器A、CAN控制器B,DSP的数据总线和地址总线直接与以太网控制器、CAN控制器相连,控制总线通过CPLD与各自控制器的控制总线相连,以太网控制器的切换和CAN控制器的切换工作由CPLD实现。

两个以太网接口共用一个IP地址,工作时,只有以太网控制器A工作,以太网控制器B作为备份。当以太网控制器A不能正常通讯时,由DSP内部程序发出指令,经CPLD控制切换到以太网控制器B进行通讯,以太网控制器A停止工作。DSP上电后自动将CAN控制器A设置为主控制器,CANB设置为从控制器,如果检测到CANA故障,则程序自动将CANB设置为主控制器。

如果出现故障时, DSP内部程序在发送报文里加入相应的故障指示,同时以指示灯闪烁的形式进行故障提示。

该方案与双网桥方案相比较,有以下优点:

  • ⑴不需要专用的硬件切换电路,通过CPLD将硬件软件化,便于调试、修改及保密;
  • ⑵当主以太网控制器回路或主CAN控制器回路发生故障时,可方便实现无扰切换;
  • ⑶故障检测和冗余切换全部由软件实现,若仅以太网控制器A故障,则仅切换以太网控制器B,不对CAN控制器进行切换,相比较方案一,可靠性更高;
  • ⑷只需一块双冗余网桥即可实现,节省空间,便于多机冗余。

结束语

CAN-以太网网桥作为系统中的核心部件,对可靠性有很高的要求。如果该网桥出现故障,整个系统将处于瘫痪状态,这对于系统来说是灾难性的。

在充分借鉴吸收成熟先进的计算机技术基础上,着重提高系统的可靠性,进行模块化设计。本文提出了两种网桥冗余方案,其中双网桥方案已经在某型舰炮控制系统原理样机上经过试验,试验结果表明,双网桥冗余功能工作正常,可实现双网冗余功能,大大提高了系统的可靠性。

该研究成果对提高网络、总线容错,满足特殊环境下高可靠性要求是非常有意义的,因此具有广泛的应用前景和较大的推广价值。

(编自《电气技术》,作者为谢战洪。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值