一种CANopen网络主设备冗余控制方法与流程

文档序号:12278226阅读:447来源:国知局
一种CANopen网络主设备冗余控制方法与流程

本发明涉及CANopen网络技术领域,特别是涉及一种CANopen网络主设备冗余控制方法。



背景技术:

目前,列车网络系统关键设备的冗余是体现该网络系统可靠性的重要指标。CANopen是一种架构在控制局域网路(Controller Area Network,CAN)上的高层通讯协定。在基于CANopen协议的列车网络控制系统中,实现NMT管理主设备的冗余机制主要是参考Cia302标准规定的flying master来实现,在仅仅支持Cia301协议的CANopen网络中,如果要实现flying master功能,则需要增加Cia302协议的支持,这样势必会增加开发的难度和成本。但是实现flying master的前提是必须实现Cia302协议。在大部分的CANopen网络系统并没有支持Cia302协议,仅仅支持Cia301协议,但是在这种情况下整个CANopen系统必须实现NMT管理主的冗余备份。目前在基于CANopen Cia301协议的前提下,并没有一种CANopen网络主设备冗余控制方法,CANopen网络的可靠性较低,因此,如何提供一种CANopen网络主设备冗余控制方法是亟待解决的问题。



技术实现要素:

本发明的目的是提供一种CANopen网络主设备冗余控制方法,以实现CANopen网络管理主冗余备份,提高CANopen网络的可靠性。

为解决上述技术问题,本发明提供一种CANopen网络主设备冗余控制方法,该方法包括:

CANopen设备上电启动,读取配置文件;

所述CANopen设备依据所述配置文件获取所述CANopen设备的设备模式;

若所述设备模式为CANopen主模式,所述CANopen设备成为CANopen网络的主设备,进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理;

若所述设备模式为CANopen备用主模式,所述CANopen设备成为CANopen网络的主备用设备,进入到一个监听状态,接收整个CANopen网络的数据;

若所述设备模式为CANopen从模式,所述CANopen设备成为CANopen网络的从设备,进入到CANopen NMT网络管理从状态,启动PDO通信机制进行数据通信。

优选的,所述配置文件包括所述CANopen设备的设备模式、节点ID和对象字典配置项;所述设备模式包括CANopen主模式、CANopen备用主模式或者CANopen从模式。

优选的,当所述设备模式为CANopen主模式或者CANopen备用主模式时,所述配置文件还包括所述CANopen设备的虚拟节点ID。

优选的,所述CANopen网络为基于Cia301协议的CANopen网络。

优选的,所述进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理之后,还包括:

所述CANopen设备以1ms为周期向CANopen网络的主备用设备发送生命信号。

优选的,所述进入到一个监听状态,接收整个CANopen网络的数据之后,还包括:

当所述CANopen设备在10ms内没有接收到CANopen网络的主设备发送的生命信号,所述CANopen设备自动进入主设备状态,作为CANopen网络的主设备对整个CANopen网络进行管理。

优选的,所述进入到一个监听状态,接收整个CANopen网络的数据之后,还包括:禁止发送任何CANopen数据。

本发明所提供的一种CANopen网络主设备冗余控制方法,CANopen设备上电启动,读取配置文件;所述CANopen设备依据所述配置文件获取所述CANopen设备的设备模式;若所述设备模式为CANopen主模式,所述CANopen设备成为CANopen网络的主设备,进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理;若所述设备模式为CANopen备用主模式,所述CANopen设备成为CANopen网络的主备用设备,进入到一个监听状态,接收整个CANopen网络的数据;若所述设备模式为CANopen从模式,所述CANopen设备成为CANopen网络的从设备,进入到CANopen NMT网络管理从状态,启动PDO通信机制进行数据通信。可见,仅仅在基于Cia301的CANopen网络基础上,设计一种新的冗余机制,来实现CANopen网络NMT主冗余备份,提高CANopen网络的可靠性。并且在仅仅支持Cia301协议的CANopen网络中,无需实现flying master功能来增加Cia302协议的支持,降低了成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明所提供的一种CANopen网络主设备冗余控制方法的流程图;

图2为基于Cia301协议的CANopen网络拓扑图;

图3为CANopen网络中的主节点和备用主节点启动流程图。

具体实施方式

本发明的核心是提供一种CANopen网络主设备冗余控制方法,以实现CANopen网络管理主冗余备份,提高CANopen网络的可靠性。

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

术语解释:

CANopen:是一种架构在控制局域网路(Controller Area Network,CAN)上的高层通讯协定,包括通讯子协定及设备子协定常在嵌入式系统中使用,也是工业控制常用到的一种现场总线。CANopen实现了OSI模型中的网络层以上(包括网络层)的协定。CANopen标准包括寻址方案、数个小的通讯子协定及由设备子协定所定义的应用层。CANopen支援网络管理、设备监控及节点间的通讯,其中包括一个简易的传输层,可处理资料的分段传送及其组合。一般而言数据链结层及物理层会用CAN来实作。除了CANopen外,也有其他的通讯协定(如EtherCAT)实作CANopen的设备子协定。CANopen由非营利组织CiA(CAN in Automaion)进行标准的起草及审核工作,基本的CANopen设备及通讯子协定定义在CAN in Automation(CiA)draft standard 301.中。针对个别设备的子协定以CiA 301为基础再进行扩充。如针对I/O模组的CiA401及针对运动控制的CiA402。

NMT:网络管理,Network management NMT定义(设备内部)状态机的状态变更命令(如启动设备或停止设备)、侦测远端设备bootup及故障情形。

PDO:在Cia301协议中定义了过程数据对象(PDO)通信机制。PDO用来依从生产者-消费者原则快速地交换过程数据。PDO分为两种,一种是TPDO用来传输PDO数据,另外一种是RPDO用来接收PDO数据。传输过程数据对象(TPDO)支持许多种触发条件,事件触发,周期触发或远程申请(RTR)。TPDOs的行为(传输类型,时间等)完全通过配置对象字典中的通讯参数集实现。对象字典中1400h-1500h为RPDO的索引范围,1800h-19FFh为TPDO的索引范围。

图1为本发明所提供的一种CANopen网络主设备冗余控制方法的流程图,该方法包括:

S11:CANopen设备上电启动,读取配置文件;

S12:CANopen设备依据配置文件获取CANopen设备的设备模式;

S13:若设备模式为CANopen主模式,CANopen设备成为CANopen网络的主设备,进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理;

S14:若设备模式为CANopen备用主模式,CANopen设备成为CANopen网络的主备用设备,进入到一个监听状态,接收整个CANopen网络的数据;

S15:若设备模式为CANopen从模式,CANopen设备成为CANopen网络的从设备,进入到CANopen NMT网络管理从状态,启动PDO通信机制进行数据通信。

可见,仅仅在基于Cia301的CANopen网络基础上,设计一种新的冗余机制,来实现CANopen网络NMT主冗余备份,提高CANopen网络的可靠性。并且在仅仅支持Cia301协议的CANopen网络中,无需实现flying master功能来增加Cia302协议的支持,降低了成本。

基于上述方法,具体的,配置文件包括CANopen设备的设备模式、节点ID和对象字典配置项。

其中,设备模式包括CANopen主模式、CANopen备用主模式或者CANopen从模式。

其中,当设备模式为CANopen主模式或者CANopen备用主模式时,配置文件还包括CANopen设备的虚拟节点ID。

进一步的,步骤S13中,进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理之后,还包括:CANopen设备以1ms为周期向CANopen网络的主备用设备发送生命信号。

进一步的,步骤S14中,进入到一个监听状态,接收整个CANopen网络的数据之后,还包括:当CANopen设备在10ms内没有接收到CANopen网络的主设备发送的生命信号,CANopen设备自动进入主设备状态,作为CANopen网络的主设备对整个CANopen网络进行管理。

进一步的,步骤S14中,进入到一个监听状态,接收整个CANopen网络的数据之后,还包括:禁止发送任何CANopen数据。

具体的,CANopen设备为CANopen网络上连接的设备即CANopen网络中的节点。CANopen设备的设备模式为CANopen主模式时,CANopen设备作为CANopen网络的主设备,CANopen设备进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理;CANopen设备的设备模式为CANopen备用主模式时,CANopen设备作为CANopen网络的主备用设备,CANopen设备进入到一个监听状态,接收整个CANopen网络的数据;CANopen设备的设备模式为CANopen从模式时,CANopen设备作为CANopen网络的从设备,CANopen设备进入到CANopen NMT网络管理从状态,启动PDO通信机制进行数据通信。

具体的,CANopen网络为基于Cia301协议的CANopen网络,CANopen网络包括CAN总线,与CAN总线相连的一个主设备,与CAN总线相连的一个主备用设备以及与CAN总线相连的多个从设备。基于Cia301协议的CANopen网络拓扑如图2所示。

图2中,M1、M2作为该网络的管理主设备,M1和M2设备互为冗余,S1……S2为CANopen的从设备。所有的设备都接入到CAN总线上,并且每个设备在CAN总线上都有唯一的CAN ID。假设M1的CANID是IDm1,M2的CANID为IDm2,其他的从节点Sn的CANID为IDsn。我们还为互为冗余的两个主节点分配一个虚拟的CAN ID IDvm。对于其他的从设备即S1……S2而言,该网络只有一个主设备,而且该主节点的CAN ID为IDvm。主节点和备用主节点启动流程图如图3所示。

详细的,本方法的冗余方案的具体内容如下:

(1)在CANopen节点中都有一个配置文件,该配置文件包含对CANopen设备模式(主模式、备用主模式、从模式),虚拟节点ID、节点ID(NodeID)、对象字典配置项。主和备用主配置文件区别仅在于设备模式和节点ID配置,其他保存一致。对于虚拟节点ID,虚拟节点ID这个配置项仅当节点配置为主和备用主模式下才有效即才存在,而且主和备用主配置的虚拟节点ID是一致的。

(2)CANopen设备上电启动,启动完成后,CANopen设备去读取配置文件,并根据配置选项进入不同的状态中。

(3)当前配置为CANopen主时:节点会进入到CANopen NMT网络管理主状态,会按照Cia 301标准规定进行启动和对整个CANopen网络进行管理。当启动完成后,主设备会以1ms为周期向备用主设备发送生命信号,并且向从节点发送心跳报文。

(4)当前配置为CANopen备用主时:会进入到一个监听状态,备用主可以像主设备一样接收整个网络的数据,但是备用主设备会禁止发送任何CANopen数据。当CANopen备用主设备在10ms时间内没有接收到CANopen主设备发送的生命信号,备用主会自动进入主设备状态,此时备用主设备可以像主设备一样对整个网络进行管理。

(5)当前配置为CANopen从状态时执行Cia301标准规定的功能。

通过该冗余机制,对从节点而已,该网络只有一个网络管理主,而且该节点CAN ID就是配置的虚拟CAN ID。

本发明的仅仅在Cia301的基础上,设计一种新的冗余机制,来实现CANopen网络NMT主冗余备份。在仅仅支持Cia301协议的CANopen网络中,如果要实现flying master功能,则需要增加Cia302协议的支持,这样势必会增加开发的难度和成本。

综上,本发明所提供的一种CANopen网络主设备冗余控制方法,CANopen设备上电启动,读取配置文件;CANopen设备依据配置文件获取CANopen设备的设备模式;若设备模式为CANopen主模式,CANopen设备成为CANopen网络的主设备,进入到CANopen NMT网络管理主状态,对整个CANopen网络进行管理;若设备模式为CANopen备用主模式,CANopen设备成为CANopen网络的主备用设备,进入到一个监听状态,接收整个CANopen网络的数据;若设备模式为CANopen从模式,CANopen设备成为CANopen网络的从设备,进入到CANopen NMT网络管理从状态,启动PDO通信机制进行数据通信。可见,仅仅在基于Cia301的CANopen网络基础上,设计一种新的冗余机制,来实现CANopen网络NMT主冗余备份,提高CANopen网络的可靠性。并且在仅仅支持Cia301协议的CANopen网络中,无需实现flying master功能来增加Cia302协议的支持,降低了成本。

以上对本发明所提供的一种CANopen网络主设备冗余控制方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1