一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种实时以太网工控软件开发环境的数据映射方法

2022-06-02 09:24:26 来源:中国专利 TAG:


1.本发明涉及工业控制软件技术领域,涉及智能制造系统中数控机床、机器人、自动化生产线等装备的分布式控制系统编程开发应用,特别地,涉及一种实时以太网工控软件开发环境的数据映射方法。


背景技术:

2.随着“全球工业4.0”时代的到来,由于以太网通信技术在工业控制领域的渗透,工业控制系统性能不断提升,因此,工业控制系统的行业应用范围不断扩大,包括制造加工、航空航天、武器装备以及医疗卫生等。由于主站处理器模块(后简称为“主站”)为工业控制的中心处理器,它是系统的核心组件,因此,主站软件的功能完整性和性能优劣直接决定工控系统的整体性能。为了提升工控系统的人机交互能力,丰富系统软件平台功能,我们在自主可控的工控软件平台基础上,提出了一种基于canopen通信协议的工控软件集成开发环境的数据映射方法。


技术实现要素:

3.基于此,本发明提供了一种支持系统从站灵活组态、在线调试与监控等功能的工业软件集成开发环境与工控系统之间的数据映射方法,从而提高工控系统的人机交互性能,丰富系统的应用功能。
4.为实现上述目的,本发明提供了一种实时以太网工控软件开发环境的数据映射方法,工控软件平台包括软件集成开发环境以及运行于目标系统主控节点中的软件运行管理组件,软件集成开发环境与软件运行管理组件基于通用以太网端口进行通信;包括以下步骤:
5.s1:将所述工控软件平台与目标系统的主站硬件平台进行适配和对接;
6.具体为:基于工控软件平台中的软件运行管理组件的软件框架将目标系统的主站软件代码移植到从站数据映射对应的模板代码中,并为从站节点的相关控制参数在软件集成开发环境中建立对应的变量接口;
7.s2:基于工控软件平台进行从站控制数据映射,将目标系统所有与外设控制相关且需周期性通信的控制变量及状态参数映射到软件集成开发环境中;具体包括:
8.s21、构建各类从站的数据描述文件,为各类从站周期性控制变量在软件集成开发环境中建立变量数据交换接口;
9.s22、在软件运行管理组件的主站代码中,建立各类从站访问主站数据字典的数据接口函数;
10.s23、根据软件运行管理组件中从站数据映射的模板代码、各类从站构建的数据描述文件以及各类从站访问主站数据字典的数据接口函数,设计工控平台从站数据映射驱动,将主站数据字典中各类从站变量映射到软件集成开发环境中。
11.进一步的,本发明还包括:
12.s3:当目标系统所中的瞬时通信参数需要通过sdo通信对象进行数据传输映射到软件集成开发环境中时,需基于软件集成开发环境开发sdo对象通信控制的iec61131-3的功能库。
13.进一步的,步骤s3具体包括以下步骤:
14.s31、基于软件集成开发环境的library工程,构建功能库函数接口,并生成包含所有功能函数接口的library库文件和对应的m4文件;
15.s32、将m4文件移植到主站代码空间plc_master中替换原有*itf.m4文件,并通过批处理文件生成新的*itf外部接口的头文件以及包含了用户自定义函数声明的主站dep库函数头文件;
16.s33、根据构建的功能库函数接口以及包含了用户自定义函数声明的主站dep库函数头文件,在主站代码中完成iec61131-3功能库函数的功能源码设计。
17.进一步的,步骤s31中,基于软件集成开发环境生成iec61131-3的功能库函数接口及 m4文件的具体步骤主要包括功能库的工程建立、工程类型选择、功能库函数与相关接口定义以及库函数属性设置;最终生成包含所有功能函数接口的library库文件和对应m4文件。
18.进一步的,步骤s32中,在生成主站dep库函数头文件之前,需根据*itf的头文件和 m4文件对*dep.m4文件进行修改;修改完成之后,利用主站代码空间plc_master中的 dep批处理文件重新生成主站对应的*dep.h头文件。
19.进一步的,步骤s33中功能库函数包含sdo数据下发功能函数、sdo数据上传功能函数以及sdo上传数据获取功能函数。
20.进一步的,步骤s22中,从站类型包括数字量io从站、模拟量io从站和运动控制从站;三类从站对主站数据字典的读写操作,分别设计了相关数据访问的读写函数,包括: read_dinput/write_doutpu,read_ainput/write_aoutput以及read_enginput/write_engoutput。
21.进一步的,步骤s23中,本系统各类从站数据驱动以软件运行管理组件提供的 iodrvtemplate设备驱动软件模板为基础,将从站的数据映射代码移植到该模板中,形成针对各类从站数据映射的驱动。
22.进一步的,步骤s23中,针对各类从站的数据映射,iodrvtemplate设备数据映射驱动的软件模板需要进行如下修改:
23.a).针对各类从站修改设备类型号:各类从站映射驱动中的设备类型号要与对应的设备描述文件保持一致;
24.b).定义数据指针并关联数据接口:在从站数据映射驱动中定义数据指针,并将其指向对应接口;数据指针需依据各类从站输入输出变量进行定义;而软件集成开发环境的数据接口在功能函数iodrvupdateconfiguration中,将驱动模板中的指针替换为用户自定义的变量指针,实现数据与工控平台的关联;
25.c).变量实时在线更新:从站数据映射驱动中包含用于软件集成开发环境实时在线更新系统映射数据的回调函数iodrvreadinputs以及iodrvwriteoutputs。
26.进一步的,步骤s23中,由于主站数据字典的数据访问接口函数在主站代码中,需要在从站数据映射驱动中加载主站代码所生成的动态链接库,构造相关指针与主站数据字
典访问函数进行关联;主站数据字典访问函数的函数指针初始化在从站设备驱动的 hookfunction函数中进行,hookfunction函数为用户从站数据映射驱动提供初始化接口;
27.函数指针初始化完成后,在函数iodrvreadinputs以及iodrvwriteoutputs中,通过调用这些函数指针将主站数据字典中的数据与步骤b)中的输入/输出变量映射指针进行关联,完成主站数据字典所有控制与状态参数在软件集成开发环境中的数据对接。
28.本发明具有以下有益效果:
29.1、本发明提供的一种实时以太网工控软件开发环境的数据映射方法,可实现系统软件集成开发环境与系统主站的数据关联,完成软件集成开发环境对系统的控制数据交互、在线监控以及系统调试等功能。具体是:可实现实时以太网分布式工控系统各类型从站节点通信数据的在线监控与调试;可实现系统主站与软件集成开发环境之间的数据实时关联;可实现工控系统各类从站节点的灵活组态。
30.2、本发明提供的一种针对实时以太网分布式工控系统软件集成开发环境的数据映射方法,以主站canopen协议栈的数据字典为核心,基于canopen规范,完成主、从站间的数据映射,相关数据的数据类型可满足canopen协议要求。该数据映射方法中的相关数据命名、格式、长度及类型等定义采用xml脚本。系统每一种从站对应一个xml脚本文件。软件集成开发环境可通过该脚本识别相关从站的映射数据及数据属性。在完成数据映射之后,所述的各类从站参数可在软件集成开发环境中实现在线监测与调试,可通过软件集成开发环境对系统所有从站的映射数据进行在线修改。此外,基于该数据映射方法,结合实际系统应用,软件集成开发环境可实现在节点顺序、数量以及类型等方面对系统所有从站的灵活配置与组态。
31.除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
32.构成本技术的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
33.图1为工控平台整体框架图。
34.图2为软件集成开发环境的界面构成图。
35.图3为监控组态界面效果图。
36.图4为主站代码移植说明。
37.图5为系统数据映射流示意图。
38.图6为设备描述文件代码框架说明。
39.图7为软件集成开发环境中数据映射显示效果图。
40.图8为访问主站数据字典的接口函数说明。
41.图9为各类从站映射驱动的设备号说明。
42.图10为工控平台从站数据映射接口说明。
43.图11为用于主站数据字典访问的函数接口初始化说明。
44.图12为模拟量io从站数据映射源码说明。
45.图13为iec61131-3功能库接口及相关m4文件生成说明。
46.图14为对主站*dep.m4文件的修改说明。
47.图15为功能库函数源码说明。
具体实施方式
48.以下结合附图对本发明的实施例进行详细说明,但是本发明可以根据权利要求限定和覆盖的多种不同方式实施。
49.本发明提供一种支持系统从站灵活组态、在线调试与监控等功能的工业软件集成开发环境与工控系统之间的数据映射方法,从而提高工控系统的人机交互性能,丰富系统的应用功能。本发明基于自主可控的工业软件集成开发环境。
50.本发明采用的工控软件平台是一套兼容多种软件编程语言(包括iec61131-3语言、 c/c 语言等)的通用型软plc平台。该平台需要与用户所提供的目标系统进行适配与对接,完成该平台和目标系统之间的相互关联与数据映射。并且,需基于该平台开发针对目标系统的功能库,用户才能基于该软件集成开发环境对目标系统进行功能应用开发。
51.该开发环境可与多类型目标系统实现对接,包括linux、windows(windows ce)、 vxworks、rte以及嵌入式等平台类型。由于本系统主站模块的操作系统是linux系统,因此,本节将对该软件集成开发环境与linux系统平台之间的数据适配进行说明。该工控平台软件框架如图1所示。
52.该工控软件平台主要包括两大部分,分别为软件集成开发环境以及运行于目标系统主控节点中的软件运行管理组件(runtime system)。软件集成开发环境与runtime system基于通用以太网端口进行通信。
53.如图2所示,软件集成开发环境主要包括菜单工具栏、设备及工程窗口、变量定义窗口、iec61131-3逻辑编程窗口以及系统监控窗口构成。该软件集成开发环境不仅可对系统进行iec61131-3逻辑编程,并且,该工业软件集成开发环境集成了监控组态软件的相关功能。图3为监控组态界面效果图。
54.在与目标用户系统进行对接过程中,需基于runtime system软件框架将用户系统的主站软件功能移植到对应的模板中,并为从站节点的相关控制参数在软件集成开发环境中建立对应的变量接口。runtime system具体包括如下几部分功能:
55.a)执行基于工控软件平台所设计的完整系统逻辑功能;
56.b)为软件集成开发环境提供编程调试接口;
57.c)集成和关联用户目标系统的主站功能;
58.d)实现与工控平台其他端口(比如组态监控人机交互界面)的数据通信;
59.e)为用户提供实时性较高的控制线程。
60.该工控软件平台与目标系统的适配与数据映射任务主要包括以下三个部分:与系统主站的数据适配、系统从站控制参数映射以及目标系统iec61131-3功能库的开发。基于 runtime system管理组件的软件包架构,将详细说明本系统与工控平台进行数据适配的软件设计方法。适配和数据映射工作与目标系统主站平台的系统参数相关,对于不同系统主站硬件平台,适配方法会存在一定差异。本系统主站硬件的平台参数如表1所示。
61.表1目标系统主站平台的系统参数说明
[0062][0063]
基于上述工控软件平台,本发明提供了一种实时以太网工控软件开发环境的数据映射方法,包括以下步骤:
[0064]
s1:将所述工控软件平台与目标系统的主站硬件平台进行适配和对接。
[0065]
具体为:基于工控软件平台中软件运行管理组件的软件框架将目标系统的主站软件代码移植到对应的模板中,并为从站节点的相关控制参数在软件集成开发环境中建立对应的变量接口。
[0066]
在该步骤中,基于runtime system所提供的主控设备模板cmptemplateempty,将本系统的主站软件代码移植到runtime system的程序框架内。在cmptemplateempty模板中,主站代码的接入点为cmptemplateempty.c文件中的hookfunction函数。
[0067]
本系统基于runtime system的主站软件源码工作空间称为plc_master。在该代码模板中,hookfunction函数将工控平台初始化分为若干阶段。在ulhook=ch_init时,表示系统处于平台的启动阶段。而当ulhook为其他参数值时,用户可根据自身系统特点,将用户系统主站的启动代码按步骤分别放入该函数的各个部分。需注意的是,由于ch_init阶段为工控平台的启动阶段,因此,为了保证其与用户系统主站启动互不冲突,ch_init阶段不增加用户主站代码。
[0068]
本系统主站初始化包括网络端口启动配置、总线初始化、canopen协议栈设置以及相关线程开辟等过程。因此,如图4所示,主站的初始化任务按照先后顺序依次移植到该初始化函数中。另外,需将用户主站代码中的其他相关代码文件(包括h文件和c文件)都添加到该模板中,并编译生成动态链接库文件(.so)。最终通过runtime system的配置文件挂载该so库文件来执行主站功能。该模块仅与主从站间通信以及数据存储相关,系统主站在工控平台中的适配将为下一步从站控制参数的映射奠定基础。
[0069]
s2:基于工控软件平台进行从站控制数据映射,将目标系统所有与外设控制相关且需周期性通信的控制变量及状态参数映射到软件集成开发环境中。
[0070]
从站控制数据映射的目的是将系统所有与外设控制相关且需周期性通信的变量及参数映射到软件集成开发环境中,便于用户对系统外设进行逻辑控制。用户可根据实际系统硬件组态,将各类从站设备描述文件添加到系统工程中。如图5所示,随着各从站设备描述文件的加入,各从站的控制和状态参数将自动关联到软件集成开发环境的工程中。从站数据映射工作将基于iodrvtemplate设备数据映射驱动模板进行设计。关于从站控制数据映射主要包含以下步骤:
[0071]
s21、构建各类从站的数据描述文件(.xml),为各类从站周期性控制变量在软件集成开发环境中建立变量数据交换接口。
[0072]
具体的:从站的设备描述文件主要是为各类型从站周期性控制参数建立软件集成开发环境的逻辑变量接口。而各类从站的周期性参数与变量都位于主从站之间通信的pdo对象中。由于各类从站pdo对象中的参数存在差异,因此,需要建立各类从站所对应的设备描述文件。本系统三种从站pdo对象所包含的数据如表2所示。
[0073]
表2各类从站pdo对象包含的参数说明
[0074][0075][0076]
结合上述过程通信参数,对各类从站的设备描述文件进行构建。从站设备描述文
hookfunction函数中进行。该hookfunction函数为用户从站数据映射驱动提供初始化接口。图12为模拟量io从站数据映射源码说明。
[0086]
函数指针初始化完成之后,在函数iodrvreadinputs以及iodrvwriteoutputs中,通过调用这些函数指针将主站数据字典中的数据与b)中的输入/输出变量映射指针进行关联,完成主站数据字典所有控制与状态参数在软件集成开发环境中的数据对接。
[0087]
通过步骤s1和s2两部分工作,即可实现用户目标系统与工控平台的的数据对接,以及系统周期性控制和状态参数在软件集成开发环境中的实时关联。
[0088]
由于本系统除了周期性控制及状态参数外,还包括瞬时通信参数。而瞬时通信参数需要通过sdo通信对象进行数据传输,因此,本发明还包括步骤s3:当目标系统中的瞬时通信参数需要通过sdo通信对象进行数据传输映射到软件集成开发环境中时,需基于软件集成开发环境开发sdo对象通信控制的iec61131-3的功能库。
[0089]
针对本系统canopen协议中sdo通信对象的瞬时通信需求,基于工控平台,需开发用于sdo通信的iec61131-3的功能库。iec61131-3功能库的生成主要包括如下几个步骤:
[0090]
s31、构建功能函数接口及生成相关m4文件。基于软件集成开发环境的library工程,定义iec61131-3功能函数的输入输出接口,并生成对应的m4依赖文件,为在主站代码中实现iec61131-3功能库的底层函数设计奠定基础。如图13所示,基于软件集成开发环境生成iec61131-3功能函数接口及相关m4文件的具体步骤主要包括功能库的工程建立、工程类型选择、功能库函数与相关接口定义以及库函数属性设置等。最终生成包含所有功能函数接口的library库文件和对应m4文件。
[0091]
s32、主站dep库函数头文件生成。将iec61131-3功能库的m4文件移植到主站代码空间plc_master中替换原有*itf.m4文件,通过相关批处理文件(.bat)生成新的*itf.h外部接口头文件以及*dep.h主站代码的依赖头文件。
[0092]
在生成*dep.h头文件之前,需根据*itf的头文件和m4文件对*dep.m4文件进行修改,如图14所示。修改完成之后,利用主站代码空间plc_master中的dep批处理文件重新生成主站对应的*dep.h头文件。该头文件中包含了用户自定义函数的声明。
[0093]
s33、功能库函数源码在主站代码中的实现。具体为:在完成功能库函数接口及函数声明之后,需在主站代码中完成功能库函数的功能源码设计。由于该功能库与sdo通信对象相关,因此,该功能库主要包含sdo数据下发(write_sdo)、sdo数据上传(read_sdo) 以及sdo上传数据获取(get_sdo_result)等功能函数,如图15所示。
[0094]
综上所述,经过步骤s1、s2和s3中的相关工作,可以完成软件集成开发环境与主从站的适配与数据对接,能够实现从站的灵活硬件组态,逻辑功能的设计、编写、下载调试以及运行。对系统pdo对象直接通过数据映射关联到软件集成开发环境中,便于用户直接通过iec61131-3编程对其进行周期性逻辑控制。而对于系统sdo对象的通信需要调用 iec61131-3功能库实现主从站间的瞬时通信功能。
[0095]
本发明提供的一种针对实时以太网分布式工控系统软件集成开发环境的数据映射方法,以主站canopen协议栈的数据字典为核心,基于canopen规范,完成主、从站间的数据映射,相关数据的数据类型可满足canopen协议要求。该数据映射方法中的相关数据命名、格式、长度及类型等定义采用xml脚本。系统每一种从站对应一个xml脚本文件。软件集成开发环境可通过该脚本识别相关从站的映射数据及数据属性。在完成数据映射之后,所
述的各类从站参数可在软件集成开发环境中实现在线监测与调试,可通过软件集成开发环境对系统所有从站的映射数据进行在线修改。此外,基于该数据映射方法,结合实际系统应用,软件集成开发环境可实现在节点顺序、数量以及类型等方面对系统所有从站的灵活配置与组态。
[0096]
本发明提供的一种实时以太网工控软件开发环境的数据映射方法,可实现系统软件集成开发环境与系统主站的数据关联,完成软件集成开发环境对系统的控制数据交互、在线监控以及系统调试等功能。该数据映射方法的主要特征是:1.可将实时以太网分布式工控系统三种类型从站的控制及状态数据映射到软件集成开发环境中。三种类型从站分别为数字量io从站、模拟量io从站以及运动控制从站等主流从站控制模块;2.该数据映射方法可使系统软件集成开发环境对完整系统进行数据监测以及在线调试;3.数据映射方法的核心是主站canopen协议栈的数据对象字典,组态之后各从站节点的控制及状态参数都存于主站数据字典中,便于集中处理。
[0097]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献