一种冗余的高安全性CAN总线通信系统及其通信方法技术方案

技术编号:9768148 阅读:187 留言:0更新日期:2014-03-15 22:58
本发明专利技术提供一种冗余的高安全性CAN总线通信系统及其通信方法,该系统包括一个上位机、多个下位机和两条互为热备的CAN总线,每个上位机和下位机均由两个互为热备的模块构成;每个模块均有两个同步运算的微处理器CPU,分别为第一CPU和第二CPU,构成两个相互独立的运算通道,每个运算通道集成两个CAN总线接口,所述两个CAN总线接口分别一一对应连接两条CAN总线。本发明专利技术还提供一种冗余的高安全性CAN总线通信系统的通信方法。本发明专利技术采用多重校验和冗余收发技术,每个有效的数据包的发送和接收都是冗余的,并且在发送端和接收端设置多次校验,确保高安全性。

【技术实现步骤摘要】
—种冗余的高安全性CAN总线通信系统及其通信方法
本专利技术涉及工业总线通信
,具体是一种冗余的高安全性CAN总线通信系统及其通信方法。
技术介绍
如今的工业控制领域正朝着信息化、智能化、网络化不断发展,影响着通信效率的工业总线技术越来越受到行业的重视。传统的工业通信总线大多采用RS-485总线,但是RS-485总线存在着总线利用率低、传输速率低、通信距离短等缺点,并且缺乏完备的错误检测机制,导致其安全性较差,不适合应用在安全相关的工业领域。安全相关的工业领域包括核电、水利、交通、矿山等关系着重大公共安全的行业,一般有着严格的安全性要求。控制器局域网CAN (Controller Area Network)总线是一种能有效支持分布式实时控制的串行通信网络。近年来,由于CAN总线具有高可靠性、高传输速率、良好的勘误检错能力和低廉的成本优势,逐渐成为应用最广泛的现场总线之一。安全相关的工业领域比一般的工业领域对安全性要求更高,而且往往应用环境恶劣,存在着大量的干扰,例如电磁、温度、粉尘等影响。CAN总线虽然有错误检测机制,但在实际应用过程中,仍不可避免地会由于控制器或收发器故障、传输介质损坏及环境的干扰产生传输错误。另外,CAN总线的一个特点是多主工作方式,但在实际应用中,多主工作方式容易导致总线控制冲突,使得紧急命令和消息得不到响应或者响应过慢,对中断逻辑结构要求较高,不适合对安全性和响应时间有着严格要求的安全相关系统。
技术实现思路
本专利技术的目的在于提供一种冗余的高安全性CAN总线通信系统及其通信方法,以解决现有技术中存在的问题。本专利技术的技术方案为: 一种冗余的高安全性CAN总线通信系统,包括一个上位机、多个下位机和两条互为热备的CAN总线,每个上位机和下位机均由两个互为热备的模块构成;每个模块均有两个同步运算的微处理器CPU,分别为第一 CPU和第二 CPU,构成两个相互独立的运算通道,每个运算通道集成两个CAN总线接口,所述两个CAN总线接口分别——对应连接两条CAN总线。所述的一种冗余的高安全性CAN总线通信系统的通信方法,包括以下步骤:(1)系统完成初始化,确定上位机和下位机互为热备的两个模块的主备关系: (2)上位机主系模块第一CPU将其需要发送的数据通过两个CAN总线接口发送到两条CAN总线上;上位机主系模块第二 CPU、下位机主系模块第一 CPU和第二 CPU通过各自的CAN总线接口接收上位机主系模块第一 CPU发送的数据; (3)上位机主系模块第二CPU将其接收到的上位机主系模块第一 CPU发送的数据与其准备发送的数据进行比较,判断两个数据是否相同,若是,则跳转步骤(4),若否,则跳转步骤(8); (4)上位机主系模块第二 CPU将其需要发送的数据通过两个CAN总线接口发送到两条CAN总线上;上位机主系模块第一 CPU、下位机主系模块第一 CPU和第二 CPU通过各自的CAN总线接口接收上位机主系模块第二 CPU发送的数据; (5 )下位机主系模块第一 CPU和第二 CPU分别对各自接收到的两个数据进行比较,若第一 CPU和第二 CPU均判定各自接收到的两个数据是相同的,则跳转步骤(6),否则跳转步骤(8); (6)下位机主系模块第一CPU和第二 CPU分别对各自接收到的两个数据进行解码,得到相应的时间戳、序列号和CRC校验码,若第一 CPU和第二 CPU均判定相应的时间戳、序列号和CRC校验码是正确的,则跳转步骤(7 ),否则跳转步骤(8 ); (7)上位机主系模块向下位机主系模块通过CAN总线发送数据的通信正确完成,下位机主系模块根据解码得到的数据区,进行后续处理,并通过CAN总线向上位机主系模块应答; (8)上位机主系模块向下位机主系模块通过CAN总线发送数据的通信出现错误,通信中止,下位机主系模块等待上位机主系模块重新发起通信。所述的一种冗余的高安全性CAN总线通信系统的通信方法,所述上位机定期巡访各个下位机,每个时间片内,所述上位机与固定的下位机通信。所述的一种冗余的高安全性CAN总线通信系统的通信方法,还包括以下步骤: 备系模块通过其CAN总线接口接收CAN总线上的数据,与相应的主系模块同步运行,当主系模块出现故障时,备系模块无扰切换为主系模块。所述的一种冗余的高安全性CAN总线通信系统的通信方法,步骤(I)中,确定上位机和下位机互为热备的两个模块的主备关系,具体为: 判断每个模块是否均处于正常状态,若是,则互为热备的两个模块根据预定的主备关系运行,若否,则互为热备的两个模块根据本模块和对方模块的状态确定主备关系。所述的一种冗余的高安全性CAN总线通信系统的通信方法,还包括以下步骤:每个模块的第一 CPU和第二 CPU分别对各自接收到的数据进行有效性校验。所述的一种冗余的高安全性CAN总线通信系统的通信方法,所述每个模块的第一CPU和第二 CPU分别对各自接收到的数据进行有效性校验,具体包括: (1)判断所述数据是否来自于有效模块,若是,跳转步骤(2),若否,丢弃所述数据;所述有效模块为当前正在占用通信时间片的模块; (2)若所述数据来自于有效模块的第一CPU,则跳转步骤(3),若所述数据来自于有效模块的第二 CPU,则跳转步骤(4); (3)将该数据保存至存储区,记录该数据到达的时间点,启动对应的定时器,若在定时器规定的时间内接收到所述有效模块第二 CPU发送的数据,则将该数据判定为有效数据,否则删除保存的数据,并发送报警信息,标识主系CAN总线上通信出错,跳转步骤(5); (4)查找存储区中是否包含所述有效模块第一CPU传来的数据,若是,则将该数据判定为有效数据,若否,则将该数据判定为无效数据,丢弃不用; (5)主系CAN总线上通信出错,将备系CAN总线切换为主系CAN总线。由上述技术方案可知,本专利技术采用二乘二取二架构,包括一个上位机、若干下位机和两条CAN总线,每个上位机和下位机均由两个互为热备的模块构成,两条CAN总线构成热备,每个模块集成两个相互独立的运算通道,每个运算通道以一个高性能微处理器为核心,同步运算并实现二取二表决,每个运算通道集成两个CAN总线接口分别连接到两条CAN总线上;CAN总线通信采用主从模式,上位机定期巡访所有下位机,每个时间片内,上位机和固定的下位机通信,有效避免总线冲突。本专利技术采用多重校验和冗余收发技术,每个有效的数据包的发送和接收都是冗余的,并且在发送端和接收端设置多次校验,确保高安全性。【附图说明】图1是本专利技术的结构示意图。【具体实施方式】下面,结合附图和具体实施例进一步说明本专利技术。一种冗余的高安全性CAN总线通信系统,包括上位机1、下位机2和CAN总线3,其中上位机I 一个,下位机2若干个,CAN总线3两条。每个上位机I和下位机2均由两个互为热备的模块构成,两条CAN总线3构成热备。每个模块集成两个相互独立的运算通道,每个运算通道以一个高性能微处理器CPU为核心,同步运算并实现二取二表决;每个运算通道集成两个CAN总线接口分别——对应连接到两条CAN总线3上。CAN总线通信采用主从模式,即通信只能由主机发起,从机应答;在通信流程中,上位机I为主机,下位机2为从机,主机周期地逐本文档来自技高网...

【技术保护点】
一种冗余的高安全性CAN总线通信系统,其特征在于:包括一个上位机、多个下位机和两条互为热备的CAN总线,每个上位机和下位机均由两个互为热备的模块构成;每个模块均有两个同步运算的微处理器CPU,分别为第一CPU和第二CPU,构成两个相互独立的运算通道,每个运算通道集成两个CAN总线接口,所述两个CAN总线接口分别一一对应连接两条CAN总线。

【技术特征摘要】
1.一种冗余的高安全性CAN总线通信系统,其特征在于: 包括一个上位机、多个下位机和两条互为热备的CAN总线,每个上位机和下位机均由两个互为热备的模块构成;每个模块均有两个同步运算的微处理器CPU,分别为第一 CPU和第二 CPU,构成两个相互独立的运算通道,每个运算通道集成两个CAN总线接口,所述两个CAN总线接口分别——对应连接两条CAN总线。2.根据权利要求1所述的一种冗余的高安全性CAN总线通信系统的通信方法,其特征在于,包括以下步骤: (1)系统完成初始化,确定上位机和下位机互为热备的两个模块的主备关系: (2)上位机主系模块第一CPU将其需要发送的数据通过两个CAN总线接口发送到两条CAN总线上;上位机主系模块第二 CPU、下位机主系模块第一 CPU和第二 CPU通过各自的CAN总线接口接收上位机主系模块第一 CPU发送的数据; (3)上位机主系模块第二CPU将其接收到的上位机主系模块第一 CPU发送的数据与其准备发送的数据进行比较,判断两个数据是否相同,若是,则跳转步骤(4),若否,则跳转步骤(8); (4)上位机主系模块第二CPU将其需要发送的数据通过两个CAN总线接口发送到两条CAN总线上;上位机主系模块第一 CPU、下位机主系模块第一 CPU和第二 CPU通过各自的CAN总线接口接收上位机主系模块第二 CPU发送的数据; (5)下位机主系模块第一CPU和第二 CPU分别对各自接收到的两个数据进行比较,若第一 CPU和第二 CPU均判定各自接收到的两个数据是相同的,则跳转步骤(6),否则跳转步骤(8);` (6)下位机主系模块第一CPU和第二 CPU分别对各自接收到的两个数据进行解码,得到相应的时间戳、序列号和CRC校验码,若第一 CPU和第二 CPU均判定相应的时间戳、序列号和CRC校验码是正确的,则跳转步骤(7 ),否则跳转步骤(8 ); (7)上位机主系模块向下位机主系模块通过CAN总线发送数据的通信正确完成,下位机主系模块根据解码得到的数据区,进行后续处理,并通过CAN总线向上位机主系模块应答; (8)上位机主系模块向下位机主系模块通过CAN总线发送数据...

【专利技术属性】
技术研发人员:魏臻胡庆新许崇兰龙倪璞苏燚范永东张磊磊
申请(专利权)人:合肥工大高科信息科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1