DCS控制器间通讯数据生成方法和系统、设备及存储介质转让专利
申请号 : CN202111335499.8
文献号 : CN113778041B
文献日 : 2022-02-15
发明人 : 陈江 , 王利国 , 李辉 , 程阳 , 陈丰 , 翟亮晶 , 潘乐 , 刘畅 , 冯震震
申请人 : 西安热工研究院有限公司 , 中国华能集团有限公司 , 华能国际电力股份有限公司
摘要 :
权利要求 :
1.一种DCS控制器间通讯数据生成方法,其特征在于,包括以下步骤:获取工具端的组态配置文件,所述组态配置文件中配置有控制器间引用点逻辑功能块;
对所述组态配置文件进行预解析;对预解析后的所述组态配置文件进行解析,得到组态配置文件对象;根据组态下装标记更新解析工具端新下装的组态配置文件,更新组态配置文件对象中的控制器间引用点逻辑功能块中的变量;
获取所述变量,依据所述变量的变量值在本地控制器中注册控制器间通讯数据;
根据注册的控制器间通讯数据运算控制器间引用点逻辑功能块,生成控制器间引用点逻辑功能块的输出值;
所述根据组态下装标记更新解析工具端新下装的组态配置文件,具体为:根据新下装的组态配置文件页号定位至所述组态配置文件对象中,并将组态配置文件对象中相同的数据项拷贝至新下装的组态配置文件中;
拷贝完成并以新下装的组态配置文件页号为索引,删除控制器间引用点注册队列中与新下装的组态配置文件页号相关的所有控制器间引用点信息,并将组态下装标记置1,记录本次更新的组态配置文件页号;
将新下装的组态配置文件中的内容拷贝至本地控制器内存中的新下装的组态配置文件页号对应的组态配置文件对象处;
所述更新组态配置文件对象中的控制器间引用点逻辑功能块中的变量,具体包括:当组态下装标记为1时,判断控制器间引用点逻辑功能块所在的组态配置文件页号与上一步骤中存储的更新的组态配置文件页号是否相同:若相同,则将控制器间引用点逻辑功能块中的变量清0;
若不同,则对变量不做处理;
所述根据注册的控制器间通讯数据运算控制器间引用点逻辑功能块,生成控制器间引用点逻辑功能块的输出值,具体包括:在周期运算任务开始之前,本地控制器根据控制器间引用点注册队列中的通讯数据信息向源端控制器请求通讯数据信息,本地控制器获取到源端控制器返回的通讯数据的数据信息后,先将通讯数据的数据信息存储至本地;通讯数据信息包含通讯数据值及通讯数据在源端控制器中的组态配置文件中的数据偏移;
在控制器间引用点逻辑功能块运算时,本地控制器将存储至本地的通讯数据的数据值和通讯数据在源端控制器中的组态配置文件中的数据偏移填写至控制器间引用点逻辑功能块的数据区处,并判断通讯数据的数据偏移是否有效:若通讯数据的数据偏移无效,将控制器间引用点逻辑功能块的输出值品质置为无引用源端,并上送至工具端;
若引用点的数据偏移有效,则正常输出请求过来的通讯数据的数据值。
2.根据权利要求1所述的DCS控制器间通讯数据生成方法,其特征在于,所述根据组态下装标记更新解析工具端新下装的组态配置文件之前还包括:对所述组态配置文件进行预解析后,将本地控制器中的组态下装标记置1,按时序进入周期算法任务后,检测组态下装标记:如果组态下装标记为1,则本地控制器更新解析工具端新下装的组态配置文件;如果组态下装标记为0,则不更新。
3.根据权利要求1所述的DCS控制器间通讯数据生成方法,其特征在于,所述删除控制器间引用点注册队列中与新下装的组态配置文件页号相关的所有控制器间引用点信息,具体包括:
获取本地控制器中控制器间引用点注册队列中存储的已经注册的最大通讯数据点数偏移量;将控制器间引用点注册队列中次大通讯数据点数偏移量置零;
从0开始遍历控制器间引用点注册队列中已注册的通讯数据,直至最大通讯数据点数偏移量结束;
判断遍历到的通讯数据所属组态配置文件页号是否为新下装的组态配置文件页号:若否,将本次遍历次数赋给次大通讯点数偏移量并开始遍历下一个通讯数据;
若是,将所述通讯数据在控制器间引用点注册队列中的相关信息全部置零,将本地控制器中存储的控制器间通讯点数减1,并判断遍历次数是否已到达最大通讯点数偏移量:若否,则遍历控制器间引用点注册队列中下一个通讯数据;
若是,将次小点数偏移量的值赋给最大点数偏移量的值。
4.根据权利要求1所述的DCS控制器间通讯数据生成方法,其特征在于,依据所述变量的变量值在本地控制器中注册控制器间通讯数据之前还包括:判断控制器间引用点逻辑功能块中所述变量的变量值;
若变量值为1,则控制器间引用点逻辑功能块对应的通讯数据已经生成,不需要在本地控制器中注册;
若变量值为0,则依据控制器间引用点逻辑功能块中存储的基本信息在本地控制器中注册控制器间通讯数据,注册完成后,将变量值置1,本地控制器中则生成控制器间通讯数据。
5.根据权利要求1所述的DCS控制器间通讯数据生成方法,其特征在于,所述控制器间引用点逻辑功能块中存储的基本信息包括:通讯数据的测点标签名、通讯数据所属的源端控制器编号、通讯数据所在源端控制器中的组态配置文件页号以及通讯数据在本地控制器中所属组态配置文件数据区的数据偏移。
6.根据权利要求1所述的DCS控制器间通讯数据生成方法,其特征在于,所述依据所述变量的变量值在本地控制器中注册控制器间通讯数据,具体包括:将控制器间引用点逻辑功能块中存储的通讯数据的基本信息压入本地控制器中控制器间引用点注册队列,选择在控制器间引用点注册队列中按照以下方法填值:在控制器间引用点注册队列可容纳的最大点数之内遍历控制器间引用点注册队列,若控制器间引用点注册队列中当前被遍历的位置没被占用,则在当前位置压入控制器间引用点逻辑功能块中存储的引用点的引用信息,注册成功后更新本地控制器中存储的引用控制器的引点数。
7.一种DCS控制器间通讯数据生成系统,其特征在于,基于权利要求1‑6任一项所述DCS控制器间通讯数据生成方法,系统包括:获取模块,用于获取工具端的组态配置文件,所述组态配置文件中配置有控制器间引用点逻辑功能块;
预解析和更新模块,用于对所述组态配置文件进行预解析;对预解析后的所述组态配置文件进行解析,得到组态配置文件对象;根据组态下装标记更新解析工具端新下装的组态配置文件,更新组态配置文件对象中的控制器间引用点逻辑功能块中的变量;
注册通讯模块,用于获取所述变量,依据所述变量的变量值在本地控制器中注册控制器间通讯数据;
输出模块,用于根据注册的控制器间通讯数据运算控制器间引用点逻辑功能块,生成控制器间引用点逻辑功能块的输出值。
8.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1‑6任一项所述DCS控制器间通讯数据生成方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1‑6任一项所述DCS控制器间通讯数据生成方法的步骤。
说明书 :
DCS控制器间通讯数据生成方法和系统、设备及存储介质
技术领域
背景技术
在地理上分布在控制区域的各个部分,并执行各种设备的控制算法和配置,处理和工程PC
之间的网络通信,其通过单工或冗余配置来实现以更好地控制复杂过程的性能。控制器的
可靠性、稳定性及高时效性是分布式控制系统的高可靠性、灵活性、协调性和稳定性的保
障,因此控制器中任何一种功能的设计和实现必须以可靠性、稳定性和高时效性为前提。
逻辑也并不简单,因此在解析逻辑组态文件时,如何对控制器间通讯数据进行高效注册并
显示是一个急需解决的问题。
发明内容
和实时显示。
态配置文件对象中的控制器间引用点逻辑功能块中的变量;
记录此次更新的组态配置文件页号;
量:
讯数据。
据偏移。
间引用点逻辑功能块中存储的引用点的引用信息,注册成功后更新本地控制器中存储的引
用控制器的引点数。
数据信息后,先将通讯数据的数据信息存储至本地;通讯数据信息包含通讯数据值及通讯
数据在源端控制器中的组态配置文件中的数据偏移;
辑功能块的数据区处,并判断通讯数据的数据偏移是否有效:
的组态配置文件,更新组态配置文件对象中的控制器间引用点逻辑功能块中的变量;
生成方法的步骤。
控制器中进行过更新组态配置文件操作,则需要在运行控制器间模拟量引用点逻辑功能块
NAI和控制器间开关量引用点逻辑功能块NDI时进行注册控制器间通讯数据的操作,注册完
后本地控制器才可根据注册的通讯数据的信息与其他控制器进行通讯请求并将请求来的
通讯数据的数据信息存储至本地,减少了对实时运算任务的扰动;在正式运算控制器间模
拟量引用点逻辑功能块NAI和控制器间开关量引用点逻辑功能块NDI时,才将存储至本地的
通讯数据的数据信息加载至控制器间模拟量引用点逻辑功能块NAI和逻辑功能块NDI的输
出项处,并对加载过来的通讯数据的数据信息进行合理性分析,以保证控制器间引用点队
列中通讯数据信息的准确性及控制器间模拟量引用点逻辑功能块NAI、控制器间开关量引
用点逻辑功能块NDI中数据值的有效性,从而高了组态运算效率,维护了系统运行的稳定性
及可靠性。
附图说明
具体实施方式
义相同。本发明所使用的术语仅是为了描述具体实施方式,而并非意图限制根据本发明的
示例性实施方式。
态配置文件对象中的控制器间引用点逻辑功能块中的变量;
控制器中进行过更新组态配置文件操作,则需要在运行控制器间模拟量引用点逻辑功能块
NAI和控制器间开关量引用点逻辑功能块NDI时进行注册控制器间通讯数据的操作,注册完
后本地控制器才可根据注册的通讯数据的信息与其他控制器进行通讯请求并将请求来的
通讯数据的数据信息存储至本地,减少了对实时运算任务的扰动。本发明保证控制器间引
用点队列中数据信息的准确性及逻辑功能块中数据值的有效性,提高了组态运算效率,维
护了系统运行的稳定性及可靠性。
的对应周期算法任务的组态配置文件;
型,NAI的OUT的类型为浮点型,而NDI的OUT类型为开关量。
制器间模拟量引用点,控制器间开关量引用点逻辑功能块NDI可配置控制器间开关量引用
点。当希望引用别的控制器的数值时,在控制器间模拟量引用点逻辑功能块NAI或者控制器
间开关量引用点逻辑功能块NDI的变量处填入引用点的标签名即可。将配置好的组态文件
下装至控制器中,本地控制器开始注册控制器间引用点。
点,逻辑功能块NDI配置控制器间开关量引用点;在配置时,需要在控制器间模拟量引用点
逻辑功能块NAI和控制器间开关量引用点逻辑功能块NDI的变量处填入期望与源端控制器
进行通讯的数据的测点标签名;在组态配置文件中根据测点标签名自动生成通讯数据所属
的源端控制器编号和通讯数据所在的源端控制器中组态配置文件页号。
组态下装标记,如果组态下装标记为1,则本地控制器更新解析工具端新下装的组态配置文
件;否则,进行后续步骤;
新下装的组态配置文件页号为索引,删除控制器间引用点注册队列中与新下装的组态配置
文件页号相关的所有控制器间引用点信息,并将组态下装标记置1和记录此次更新组态配
置文件页号,最后将新下装的组态配置文件中的内容拷贝至本地控制器内存中的新下装的
组态配置文件页号对应的组态配置文件对象处。
断遍历次数是否已到达最大通讯点数偏移量:
体为:
配置文件页号是否相同:
RegOK的值判断是否在本地控制器中注册控制器间通讯数据;
并依据RegOK的值判断是否在本地控制器中注册控制器间通讯数据具体为:
完成后,将RegOK置1,本地控制器中即可生成控制器间通讯数据。
点逻辑功能块NAI和控制器间开关量引用点逻辑功能块NDI,逻辑功能块NAI配置控制器间
模拟量引用点,控制器间开关量引用点逻辑功能块NDI配置控制器间开关量引用点;在配置
时,需要在逻辑功能块NAI和控制器间开关量引用点逻辑功能块NDI的变量处填入期望与源
端控制器进行通讯的数据的测点标签名;在组态配置文件中根据测点标签名自动生成通讯
数据所属的源端控制器编号和通讯数据所在的源端控制器中组态配置文件页号,因此控制
器间模拟量引用点逻辑功能块NAI、控制器间开关量引用点逻辑功能块NDI中存储的基本信
息包括通讯数据的测点标签名、通讯数据所属的源端控制器编号、通讯数据所在源端控制
器中的组态配置文件页号以及通讯数据在本地控制器中所属组态配置文件数据区的数据
偏移。
的基本信息压入本地控制器中控制器间引用点注册队列时,选择在注册队列中就近填值,
即在队列可容纳的最大点数之内遍历控制器间引用点注册队列,若控制器间引用点注册队
列中当前被遍历的位置没被占用则在当前位置压入控制器间模拟量引用点逻辑功能块
NAI、控制器间开关量引用点逻辑功能块NDI中存储的引用点的引用信息,注册成功后更新
本地控制器中存储的引用控制器的被引点数。
数据信息后先将通讯数据的数据信息存储至本地,通讯数据信息包含通讯数据值及通讯数
据在源端控制器中的组态配置文件中的数据偏移;
配置文件中的数据偏移填写至控制器间模拟量引用点逻辑功能块NAI、控制器间开关量引
用点逻辑功能块NDI的数据区处并判断通讯数据的数据偏移是否有效;如果通讯数据的数
据偏移无效,将控制器间模拟量引用点逻辑功能块NAI、控制器间开关量引用点逻辑功能块
NDI的输出值品质置为无引用源端并上送至工具端;若引用点的数据偏移校验通过则可正
常输出请求过来的通讯数据的数据值。
的组态配置文件,更新组态配置文件对象中的控制器间引用点逻辑功能块中的变量;
序时实现所述DCS控制器间通讯数据生成方法的步骤。
态配置文件对象中的控制器间引用点逻辑功能块中的变量;
法的步骤。
态配置文件对象中的控制器间引用点逻辑功能块中的变量;
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何
修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。