System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种控制器总线处理方法与系统技术方案_技高网

一种控制器总线处理方法与系统技术方案

技术编号:41327078 阅读:4 留言:0更新日期:2024-05-13 15:04
本发明专利技术公开了一种控制器总线处理方法与系统,采用层次化信息描述文件对总线和模块进行建模,采用组件库方式实现总线的功能,支持多种类型的总线配置、实例化加载和增量更新运行。本发明专利技术通过层次化的描述模型和通用的组件化开发加载运行方法,支持任意多种总线的开发和配置,提升处理的通用性和配置的可扩展能力,新增1种数据总线类型时,组态软件只需导入数据描述文件和模块描述文件,不需要做特殊开发即可形成通用的配置界面和配置产物。

【技术实现步骤摘要】

本专利技术属于可编程控制器,涉及一种控制器总线处理方法与系统


技术介绍

1、可编程控制器采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。随着可编程控制器应用范围不断扩大,需支持不同应用场景下的总线协议,例如ethercat、canopen、modbus、和iec61850等等。此前每扩展一个类型的总线就需要修改一次控制器运行环境的代码以及组态软件代码,重新编译形成控制器运行环境,可扩展性极差。


技术实现思路

1、为解决现有技术中存在的不足,本专利技术提供一种控制器总线处理方法与系统,通过总线的开发、配置以及控制器加载运行总线,实现总线数据与控制器数据之间的读写,其采用通用的建模配置和运行加载方法,实现了灵活可扩充的数据总线处理,提升了控制器扩展适应能力和可靠性。

2、本专利技术采用如下的技术方案。

3、一种控制器总线处理方法,通过总线的开发、配置以及控制器加载运行总线,实现总线数据与控制器数据之间的读写,所述方法包括:

4、s1:定义控制器运行环境被控制器的总线代码模块调用的接口函数并将其封装为服务结构体;

5、s2:定义被控制器运行环境调用的总线接口函数,并基于所述服务结构体,采用组件的方式开发总线功能,形成若干总线组件库;

6、s3:在端口下新建总线并为总线挂载模块,根据控制器描述文件形成端口、总线和模块的配置内容,输出控制器配置文件、总线产物文件并下载到控制器;

7、s4:控制器根据控制器配置文件加载总线组件库并形成与任务关联的总线运行实例,将总线运行实例与总线组件库关联;

8、s5:控制器根据总线产物文件调用总线运行实例关联的总线组件库的接口函数,解析总线配置信息,形成输入区、输出区和程序区的地址映射信息;

9、s6:基于输入区/输出区和程序区的地址映射信息,通过调用总线运行实例关联的总线组件库的读、写接口,实现控制器输入区/输出区和程序区数据与总线数据的交互。

10、优选地,所述总线代码模块调用的接口函数包括文件操作、内存操作、时间操作、线程服务系列接口函数;

11、所述总线接口函数包括总线初始化、总线退出、获取总线版本名称、下载解析端口配置信息、下载解析总线配置信息、开始读总线输入、读总线输入、结束读总线输入、开始写总线输出、写总线输出、结束总线输出接口函数。

12、优选地,s2中,定义被控制器运行环境调用的总线接口函数,采用组件的方式开发不同类型的总线功能,开发中通过调用s1中定义的服务结构体的函数访问控制器数据,最终形成若干总线组件库。

13、优选地,s3中,组态软件加载控制器端口描述文件、总线描述文件、模块描述文件后,用户使用组态软件,根据实际需要,在对应的端口下新建总线并为总线挂载模块,组态软件根据所述描述文件分别形成端口、总线和模块默认的详细配置内容;再根据实际现场关联总线和控制器任务,配置总线和模块的参数、输入/输出通道的属性,并将总线或模块的通道与程序变量进行映射关联,根据所述配置内容、属性、映射关联,输出控制器配置文件、总线产物文件,并下载到控制器。

14、优选地,控制器配置文件包括任务和总线关联关系,记录任务关联的总线类型和实例编号,记录需要加载的总线类型与总线组件库名称;

15、总线产物文件为层次化描述形式,最上层为端口配置内容,端口配置下包括若干数据总线实例配置内容,总线实例配置包括总线的实例编号、参数信息、变量信息、诊断信息、io映射信息、特殊数据段、模块配置,模块配置包括模块的参数信息、变量信息、诊断信息、特殊数据段、子模块配置。

16、优选地,s4中,控制器接收到s3下载的内容后,首先根据控制器配置文件中记录的需要加载的总线类型与总线组件库名称,加载总线组件库;再根据控制器配置文件中的任务与总线关联信息,在对应任务中,形成关联的总线运行实例;总线运行实例再根据总线类型检索对应的总线组件库,并将总线运行实例与总线组件库关联。

17、优选地,s5中,控制器读取总线产物文件,根据总线的实例编号,与总线运行实例形成对应关系,调用总线运行实例关联的总线组件库的接口函数,解析总线配置信息,形成输入区/输出区和程序区的地址映射信息。

18、优选地,s6中,任务开始执行前,调用总线运行实例关联的总线组件库的读接口,将总线运行实例及其挂载的模块的输入通道读取到控制器的输入区,并根据映射表将输入区的内容同步到程序区;任务结束执行前,将程序区的内容同步到输出区,调用总线运行实例关联的总线组件库的写接口,将控制器的输出区回写到总线运行实例及其挂载的模块的输出通道。

19、优选地,所述方法还包括:控制器正常运行阶段,总线运行实例将诊断信息刷新到总线运行实例和挂载的模块的诊断数据结构中,组态软件通过连接到控制器查看各总线实例和模块诊断数据。

20、优选地,所述方法还包括:在控制器正常运行阶段进行在线增量更新时,将新输出的控制器配置文件和总线产物文件下载至控制器,控制器运行环境将新下载的内容解析到待生效更新区,控制器正常运行时的数据在实际运行区;在控制器执行完总线关联的任务之后,控制器采用双缓存区乒乓原理将更新区切换为运行区,切换结束后,控制器运行环境无需重启仍能正常运行。

21、一种控制器总线处理系统,包括:

22、定义模块,用于定义控制器运行环境被控制器的总线代码模块调用的接口函数并将其封装为服务结构体;定义被控制器运行环境调用的总线接口函数,并基于所述服务结构体,采用组件的方式开发总线功能,形成若干总线组件库;

23、新建模块,用于在端口下新建总线并为总线挂载模块,根据控制器描述文件形成端口、总线和模块的配置内容,输出控制器配置文件、总线产物文件并下载到控制器;

24、关联模块,用于控制器根据控制器配置文件加载总线组件库并形成与任务关联的总线运行实例,将总线运行实例与总线组件库关联;

25、调用模块,用于控制器根据总线产物文件调用总线运行实例关联的总线组件库的接口函数,解析总线配置信息,形成输入区、输出区和程序区的地址映射信息;

26、调度模块,用于基于输入区/输出区和程序区的地址映射信息,通过调用总线运行实例关联的总线组件库的读、写接口,实现控制器输入区/输出区和程序区数据与总线数据的交互。

27、一种终端,包括处理器及存储介质;所述存储介质用于存储指令;所述处理器用于根据所述指令进行操作以执行所述方法的步骤。

28、计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述方法的步骤。

29、本专利技术的有益效果在于,与现有技术相比:

30、本专利技术对各种总线按照预设的接口开发组件库,组态软件获取控制器描述文件,按照端口-总线-模块的层次结构配本文档来自技高网...

【技术保护点】

1.一种控制器总线处理方法,通过总线的开发、配置以及控制器加载运行总线,实现总线数据与控制器数据之间的读写,其特征在于,所述方法包括:

2.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

3.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

4.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

5.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

6.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

7.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

8.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

9.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

10.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

11.一种控制器总线处理系统,利用权利要求1-10任一项所述的方法,其特征在于,所述系统包括:

12.一种终端,包括处理器及存储介质;其特征在于:

13.计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-10任一项所述方法的步骤。

...

【技术特征摘要】

1.一种控制器总线处理方法,通过总线的开发、配置以及控制器加载运行总线,实现总线数据与控制器数据之间的读写,其特征在于,所述方法包括:

2.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

3.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

4.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

5.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

6.根据权利要求1所述的一种控制器总线处理方法,其特征在于:

7.根据权利要求1所述的一种控制器总线...

【专利技术属性】
技术研发人员:叶立文陈宏君曾凯侯先栋徐深杨琛琛周进周磊郑子明王文超
申请(专利权)人:南京南瑞继保电气有限公司
类型:发明
国别省市:

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

1