一种多总线can总线网络的双冗余设计方法_第1页
一种多总线can总线网络的双冗余设计方法_第2页
一种多总线can总线网络的双冗余设计方法_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种多总线can总线网络的双冗余设计方法

0can总线冗余的主要影响因素随着colnol在工业控制领域的广泛应用,消息管道网络中节点的数量不断增加,通信距离也在延长,这对caln总线的通信可靠性提出了更高的要求。目前在提高CAN总线测试系统可靠性的诸多措施中,冗余是一种行之有效的手段。此前对CAN总线的冗余大多只是对总线的冗余,包括热冗余和冷冗余两种方式,能在一定程度上减少恶劣工作环境对CAN总线工作的影响。但是若网络中作用最为关键的主节点出现故障,则整个网络将陷于瘫痪状态。本文针对此问题,提出了一种基于节点冗余的CAN总线网络双冗余方法。1接收过程中冷冗余设计热冗余在传统的冗余技术中,基本上都只对总线进行了冗余设计。主要方式包括冷冗余与热冗余两种方式。热冗余方式是指使用两条总线电缆,每个节点内部使用两个总线驱动器,但只有一个总线控制器。当节点发送时,总线控制器通过两个总线驱动器同时向两条总线发送相同的报文。在接收过程中,判断电路自动选择两条总线中的一个并将其中的报文送入总线控制器。冷冗余是指当节点发送时,总线控制器通过两个总线驱动器同时向两条总线发送相同的报文。在接收时,单片机通过门控电路将一个CAN发送器的信号输入CAN控制器进行接收。冷冗余功耗较低但实时性差,在高速传输时不易保证数据传输的速率和正确性。热冗余虽然有较好的实时性,但功耗相对较大。在目前已查到的资料中,大部分冗余设计都是单纯的冷冗余或者热冗余。也有采用冷冗余和热冗余结合的双冗余设计方式。具体方法详见参考文献。但无论是热冗余还是冷冗余,都只能在总线层面对系统进行冗余设计。当网络中的主节点出现故障时,则这种冗余方式无法发挥任何作用,整个网络的可靠性无法得到保证,因此其适用范围也受到了一定限制。2基于节点冗余的can双冗余网络本节将首先对原有的冗余方法与本文所设计的基于节点冗余的的双冗余方法进行比较,然后针对本文所提出的新方法进行介绍。如图1所示,在已有的CAN总线双冗余网络中,一般由一个主节点以及若干个从节点组成,这种CAN总线网络对总线进行了冗余设计,可以选用两条总线都使用的热冗余方式,也可选用故障状态切换总线的冷冗余方式,由一个主节点来控制所有从节点来完成数据交换。本文所设计的基于节点冗余的CAN总线双冗余网络如图2所示,其创新点在于在对网络进行了总线冗余的基础上同时对CAN网络中作用最为重要的主节点进行了冗余设计。若系统默认的主节点出现故障时,系统能在很短的时间内检测到其出现故障,自动启用备份主节点,而在默认主节点恢复正常工作时,重新将网络主控权交还给默认主节点。同时采用节点冗余和总线冗余的CAN总线网络无疑大大增强了系统的可靠性。3基于节点冗余的双重冗余法的验证3.1多路模拟开关的设计本CAN网络由默认主节点、备份主节点以及若干功能节点构成。每个节点由内嵌CAN控制器的微控制器、多路模拟开关及两个CAN收发器组成,每个CAN收发器都各连到一路总线上。微控制器的I/O口控制多路模拟开关来选通总线0或者总线1。正常状态下默认主节点控制总线,只有在默认主节点出现故障时备份主节点才发挥主节点作用来主控总线,两个主节点通过判断它们之间的数据交换指令来实施当前主控节点的切换。3.2网络数据安全为了验证本方法的正确性,需要首先对节点间通信的帧格式进行定义,其次设置一定的通信方法,然后再在硬件上实现,通过监视工具和计算机来查看网络数据交换情况来验证本方法的可行性。3.2.1确定所测数据的平均级分类由于本系统节点数目较少,故数据帧采用11位报文标识符。通过使用设置标识符来确定该帧的优先级。通过ID号的高5位的数据类型代码可以区分节点间通信的8种基本功能;每个CAN节点都有一个地址号,来区分不同的节点。本协议规定的部分报文ID号如表1所示。3.2.2背景时间线线时下功能节点在第0路总线上动态切换系统上电时默认主节点为主控节点。主节点以25ms为周期循环向备份主节点发送同步帧与状态请求帧,备份主节点收到后回应状态信息帧;主节点以25ms为周期循环向各功能节点发送同步帧与数据请求帧,功能节点收到后向主节点回应状态信息帧与数据信息帧。若当前总线出现故障时,就进行总线切换。在时间T1内默认主节点与备份主节点都没有收到其它节点发送的数据,就切换到备用总线上。功能节点在时间T2内没有收到其它节点发送的数据,就切换到备用总线上。跳转等待时间T1与T2分别为50ms和100ms。若主节点出现故障时,备份主节点若在T1内未能收到状态请求帧,则由第0路总线切换到第1路总线上。切换总线后若在5s内仍未收到主节点发送的状态请求帧,则发挥主节点作用,在第1路总线上向功能节点发送同步帧以及数据请求帧。若能收到功能节点发送的数据信息帧,则证明主节点发生故障,回到第0路总线上,发挥主节点作用。如果回到第0路总线上后T1内无法与功能节点1正常通信,则证明此时总线发生故障,自动跳转到第1路总线上。当默认主节点恢复正常后,备份主节点回到备用状态。3.3系统重新连通整个网络设计完成后,为了验证本方法是否能够正常实现,故使用周立功公司的USBCAN-Ⅱ型接口卡进行网络测试。为了能用较少的数据量达到验证本协议的目的,本系统测试时只采用默认主节点、备份主节点及功能节点1组成网络。在此通过模拟实际工程应用中可能出现的两种通信故障来验证本协议的可行性,模拟的故障包括总线故障及主节点故障。网络测试的步骤如下:1)系统上电后工作在第0路总线上,首先断开默认主节点的第0路总线,观察此时网络通信数据,如图3所示。然后重新接通默认主节点的第0路总线,断开第1路总线,观察数据,如图4所示。2)系统在正常工作时突然给默认主节点下电,观察此时网络通信数据,如图5所示。然后重新给默认主节点上电,观察数据,如图6所示。图3—图6中的时间标识的单位为0.1ms。由图3可以看到,系统工作在第0路总线上时,网络中所有节点都能有序地进行数据交换。在断开第0路总线后,经过时间间隔0x3127e0-0x3125e7=0x1f9=505×0.1ms=50.5ms后,默认主节点与备份主节点自动切换到第1路总线上通信。而功能节点1向默认主节点回发状态信息帧的时间间隔为0x3129de-0x3125ed=3f1=100.9ms。图4所示在重新接通主节点第0路总线,断开默认主节点第1路总线后,所有节点自动切换到第0路总线通信,切换时间可按上文方法得到,分别为50.5ms与100.8ms。图5所示在工作时给默认主节点下电,备份主节点自动切换总线后,开始工作的时间间隔为0x4263154-0x4256d94=0xc3c0=5.0112s。在第1路总线与功能节点1进行一次数据交换后,立即回到第0路进行数据交换。功能节点1回应的数据信息帧ID号由0x298变为0x299。图6所示在重新给默认主节点上电后,可以从功能节点1回应的数据信息帧的ID号可以看出:总线主控权迅速回到主节点手中,备用主节点回到备用状态。测试结果表明:基于节点冗余的双冗余方法不仅能实现原有的双冗余方法的总线冗余功能,还实现了节点冗余功能,本方法的正确性得到了验证。4系统自动切换本文提出的基于节点冗余的CAN总线双冗余方法对网络中每个节点进行了总线冗余,同时为网络中最为重要的主节点进行了节点冗余。系统在工作时,如果总线出现故障,系统中所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论