一种基于CANopen主站管理多节点的控制方法及系统技术方案

技术编号:37612249 阅读:37 留言:0更新日期:2023-05-18 12:04
本发明专利技术公开了一种基于CANopen主站管理多节点的控制方法、系统、介质及设备,此方法包括步骤:主站在上电初始化的过程中,查看文件系统中从站配置文件的个数,判断主站需要管理的从站节点个数;其中从站配置文件预先导入至文件系统中;解析相应从站配置文件,获取每个从站节点信息;如果从站配置文件解析正常,主站对所有从站节点进行节点通信,完成数据交互。本发明专利技术能够通过解析从站配置文件直接管理CANopen从站节点通信,可以快速降低软件的开发成本和维护成本,提高风电系统通信软件的扩展性。展性。展性。

【技术实现步骤摘要】
一种基于CANopen主站管理多节点的控制方法及系统


[0001]本专利技术主要涉及CAN总线通信
,具体涉及一种基于CANopen主站管理多节点的控制方法及系统。

技术介绍

[0002]CANopen主站设计主要在PLC中进行设计应用,在风电整机系统应用广泛。但是PLC的成本相对较高,需要进行降本增效,完成替换。在该过程中,基于CANopen协议进行主站软件设计的工作需要进行功能性、扩展性、维护性方面的思考及实现,以便风电整体系统在不同厂商的从站节点完成数据采集。
[0003]基于嵌入式的关于CANopen主站的设计方案,传统做法是将GSD文件信息直接写入代码中,这种形式的代码设计固化程序高,一旦从站发生变化,主站软件将随之发生变化,软件变更将会非常麻烦。

技术实现思路

[0004]本专利技术要解决的技术问题就在于:针对现有技术存在的问题,本专利技术提供一种通过解析从站配置文件直接管理CANopen从站节点通信的基于CANopen主站管理多节点的控制方法及系统。
[0005]为解决上述技术问题,本专利技术提出的技术方案为:
[0006]一种基于CANopen主站管理多节点的控制方法,包括步骤:
[0007]主站在上电初始化的过程中,查看文件系统中从站配置文件的个数,判断主站需要管理的从站节点个数;其中从站配置文件预先导入至文件系统中;
[0008]解析相应从站配置文件,获取每个从站节点信息;如果从站配置文件解析正常,主站对所有从站节点进行节点通信,完成数据交互。
[0009]作为上述技术方案的进一步改进:
[0010]主站在上电初始化的过程中,文件系统提供从站配置文件储存位置,主站协议代码在初始化过程进行读取文件、解析文件、生成从站节点对象字典三个过程;其中对象字典分为两层索引,分别为主索引和子索引;完成初始化后,通过哈希查找读取从站节点对象字典信息,进而对CANopen主从通信交互提供配置信息。
[0011]在从站配置文件解析正常后,进行总线测试:
[0012]根据从站配置文件信参数,主站试探性发送相关请求报文,查看对应从站节点是否进行相关响应;若有部分响应代表从站节点在线;然后对所有采集到的数据进行分析,查看是否出现相关报文帧未得到响应;若存在则代表对应从站配置文件与实际从站节点存在出入,协议不匹配。
[0013]还包括CANopen总线诊断方法,完成从CAN控制器驱动层到CANoepn协议应用层的整体诊断,具体为:
[0014]通过CAN控制器状态寄存器及错误计数寄存器读取当前总线的异常状态;如果底
层控制器异常直接通知给上层应用,报总线异常协议;
[0015]同时,应用层数据交互过程中,在进行数据流程运行过程中,同时进行任务检测、数据检测以及错误协议检测,形成诊断结果;其中任务检测包括定时器定时与任务状态检测;数据检测包括数据帧完整性与收发数据状态检测;错误协议包括CANopen自身带有的节点保护以及错误协议检测。
[0016]所述诊断结果输出到上位机中并借助文件系统形成日志文件。
[0017]主站在上电初始化的过程中,通过主站探测从站对象字典的方法,借助总线通信直接获取从站信息,生成从站配置文件,导入至文件系统中。
[0018]主站探测从站对象字典的方法的具体过程为:
[0019]主站根据索引空间约束,通过发送SDO报文,借助总线通信直接获取从站对象字典信息,包含对索引空间地址、数据类型进行轮询遍历,根据SDO反馈异常报文帧来判别在遍历过程中的遍历空间地址、数据类型以及反馈数据是否有效。
[0020]本专利技术还公开了一种基于CANopen主站管理多节点的控制系统,包括:
[0021]第一程序模块,用于主站在上电初始化的过程中,查看文件系统中从站配置文件的个数,判断主站需要管理的从站节点个数;其中从站配置文件预先导入至文件系统中;
[0022]第二程序模块,用于解析相应从站配置文件,获取每个从站节点信息;如果从站配置文件解析正常,主站对所有从站节点进行节点通信,完成数据交互。
[0023]本专利技术还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上所述的基于CANopen主站管理多节点的控制方法的步骤。
[0024]本专利技术进一步公开了一种计算机设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上所述的基于CANopen主站管理多节点的控制方法所执行的步骤。
[0025]与现有技术相比,本专利技术的优点在于:
[0026]本专利技术的基于CANopen主站管理多节点的控制方法及系统,通过解析从站配置文件直接管理CANopen从站节点通信,建立通信链路,其中主站软件不必发生变化;上述方法可以快速降低软件的开发成本和维护成本,提高风电系统通信软件的扩展性。
[0027]本专利技术具有较高的通信诊断功能,可以完成从CAN控制器驱动层到CANoepn协议应用层的整体诊断,能够快速定位通信故障,定位应用层通信故障位置,从而快速排查通信异常问题。
[0028]本专利技术中的主站探测从站对象字典的方法,不仅可以读取从站配置文件,还可以逆向完成从站配置信息获取并生成GSD文件,可以在主站未得到从站GSD文件信息的前期下,完成相关数据交互。
附图说明
[0029]图1为本专利技术的控制方法在实施例的流程图。
[0030]图2为本专利技术中的主站探测从站对象字典的方法在实施例的流程图。
具体实施方式
[0031]以下结合说明书附图和具体实施例对本专利技术作进一步描述。
[0032]如图1所示,本专利技术实施例的基于CANopen主站管理多节点的控制方法,涉及CAN总线通信,具体应用于风电领域使用较为广泛的总线通信,具体包括以下步骤:
[0033]主站在上电初始化的过程中,查看文件系统中从站配置文件的个数,判断主站需要管理的从站节点个数;其中从站配置文件简称GSD文件,具有标准格式,储存从站节点具体的通信信息,并预先导入至文件系统的对应文件夹中;
[0034]解析相应从站配置文件,获取每个从站节点数据协议等信息,完成主站加载从站功能;如果从站配置文件解析正常,主站对所有从站节点进行节点通信,完成数据交互。
[0035]本专利技术的基于CANopen主站管理多节点的控制方法,通过解析从站配置文件直接管理CANopen从站节点通信,建立通信链路,其中主站软件不必发生变化;上述方法可以快速降低软件的开发成本和维护成本,提高风电系统通信软件的扩展性。
[0036]在一具体实施例中,主站在初始化配置过程中,文件系统提供GSD文件储存位置,主站协议代码在初始化过程进行读取文件、解析文件、生成从站节点对象字典三个过程。对象字典分为两层索引(分别为主索引及子索引),通过链表形式保存在系统RAM中;完成初始化后,程序通过哈希查找读取对象字典信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于CANopen主站管理多节点的控制方法,其特征在于,包括步骤:主站在上电初始化的过程中,查看文件系统中从站配置文件的个数,判断主站需要管理的从站节点个数;其中从站配置文件预先导入至文件系统中;解析相应从站配置文件,获取每个从站节点信息;如果从站配置文件解析正常,主站对所有从站节点进行节点通信,完成数据交互。2.根据权利要求1所述的基于CANopen主站管理多节点的控制方法,其特征在于,主站在上电初始化的过程中,文件系统提供从站配置文件储存位置,主站协议代码在初始化过程进行读取文件、解析文件、生成从站节点对象字典三个过程;其中对象字典分为两层索引,分别为主索引和子索引;完成初始化后,通过哈希查找读取从站节点对象字典信息,进而对CANopen主从通信交互提供配置信息。3.根据权利要求1或2所述的基于CANopen主站管理多节点的控制方法,其特征在于,在从站配置文件解析正常后,进行总线测试:根据从站配置文件信参数,主站试探性发送相关请求报文,查看对应从站节点是否进行相关响应;若有部分响应代表从站节点在线;然后对所有采集到的数据进行分析,查看是否出现相关报文帧未得到响应;若存在则代表对应从站配置文件与实际从站节点存在出入,协议不匹配。4.根据权利要求1或2所述的基于CANopen主站管理多节点的控制方法,其特征在于,还包括CANopen总线诊断方法,完成从CAN控制器驱动层到CANoepn协议应用层的整体诊断,具体为:通过CAN控制器状态寄存器及错误计数寄存器读取当前总线的异常状态;如果底层控制器异常直接通知给上层应用,报总线异常协议;同时,应用层数据交互过程中,在进行数据流程运行过程中,同时进行任务检测、数据检测以及错误协议检测,形成诊断结果;其中任务检测包括定时器定时与任务状态检测;数据检测包...

【专利技术属性】
技术研发人员:何亚屏王超何成昭李程
申请(专利权)人:株洲变流技术国家工程研究中心有限公司
类型:发明
国别省市:

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

1