CN113434328B - 一种分散控制系统逻辑组态编译纠错方法和系统 - Google Patents

一种分散控制系统逻辑组态编译纠错方法和系统 Download PDF

Info

Publication number
CN113434328B
CN113434328B CN202110985559.4A CN202110985559A CN113434328B CN 113434328 B CN113434328 B CN 113434328B CN 202110985559 A CN202110985559 A CN 202110985559A CN 113434328 B CN113434328 B CN 113434328B
Authority
CN
China
Prior art keywords
function block
error information
organization unit
program organization
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110985559.4A
Other languages
English (en)
Other versions
CN113434328A (zh
Inventor
曾卫东
张军
谭良良
高少华
刘茜
陈宏君
贾泽冰
王鑫
胡涵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NR Electric Co Ltd
Xian Thermal Power Research Institute Co Ltd
Original Assignee
NR Electric Co Ltd
Xian Thermal Power Research Institute Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NR Electric Co Ltd, Xian Thermal Power Research Institute Co Ltd filed Critical NR Electric Co Ltd
Priority to CN202110985559.4A priority Critical patent/CN113434328B/zh
Publication of CN113434328A publication Critical patent/CN113434328A/zh
Application granted granted Critical
Publication of CN113434328B publication Critical patent/CN113434328B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0264Control of logging system, e.g. decision on which data to store; time-stamping measurements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Logic Circuits (AREA)

Abstract

本发明一种分散控制系统逻辑组态编译纠错方法和系统,包括:将组态工具中当前的逻辑组态页保存为程序组织单元;建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息;建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序;按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息;按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的当前功能块进行纠错,若有错误信息则记录错误信息;纠错完成后,得到编译结果,汇总所有错误信息。本发明在编译的过程中进行纠错,提高了效率,避免了误判。

Description

一种分散控制系统逻辑组态编译纠错方法和系统
技术领域
本发明涉及分散控制系统,具体为一种分散控制系统逻辑组态编译纠错方法和系统。
背景技术
现有的分散控制系统(DCS)中,部分组态工具没有逻辑组态纠错机制,导致组态工具中存在的逻辑错误以及安全隐患无法被及时发现和消除,对机组安全运行造成威胁。部分组态工具具有逻辑组态纠错机制,但是现有的逻辑组态纠错,一般采用人工根据工程经验进行,效率较低,在面对大量逻辑组态图时,容易出现误判或疏漏。
发明内容
针对现有技术中存在的问题,本发明提供一种分散控制系统逻辑组态编译纠错方法和系统,在编译的过程进行纠错,提高了效率,避免了误判。
本发明是通过以下技术方案来实现:
一种分散控制系统逻辑组态编译纠错方法,包括:
将组态工具中当前的逻辑组态页保存为程序组织单元;
建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息;
建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序;
按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息;
按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的当前功能块进行纠错,若有错误信息则记录错误信息;
纠错完成后,得到编译结果,汇总所有错误信息。
优选的,建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息,具体为:
步骤1)、遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块和终止位置功能块,在该过程中进行纠错,若有错误信息则记录错误信息;
步骤2)、遍历程序组织单元中的所有功能块,若当前功能块的类型为中继点类型,则将当前功能块的起始节点合并到与当前功能块同源的功能块的起始节点;
步骤3)、重新遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块,若起始位置功能块的类型为中继点类型,则属于逻辑组态错误,记录错误信息Linkwith LinkDot。
进一步的,步骤1)中,遍历程序组织单元中的所有连接线,获取连接线的起始位置功能块,具体为:
遍历程序组织单元中的所有连接线,获取当前连接线起始位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的起始位置功能块;若没有找到相应的功能块,则记录错误信息Undefined_start_node。
进一步的,步骤1)中,遍历程序组织单元中的所有连接线,获取连接线的终止位置功能块,具体为:
遍历程序组织单元中的所有连接线,获取当前连接线终止位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的终止位置功能块,若没有找到相应的功能块,则记录错误信息Undefined end node。
进一步的,步骤2)中,将当前功能块的起始节点合并到与当前功能块同源的功能块的起始节点,具体为:
获取当前功能块的输入节点,查找连接到输入节点的连接线,获取连接到输入节点的连接线的起始位置功能块;再获取当前功能块的输出节点,查找连接到输出节点的连接线,获取连接到输出节点的连接线的终止位置功能块;在连接到输入节点的连接线的起始功能块与连接到输出节点的连接线的终止位置功能块之间建立连接线。
优选的,按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息,具体为:
按照功能块排序遍历程序组织单元中的所有功能块,获取当前功能块的实例名,若实例名为空,则为逻辑组态错误,记录错误信息“实例名为空”;若实例名不为空,则查询预设的存储功能块及实例名的哈希表,若在哈希表中没有查询到与当前功能块的实例名相同的实例名,则将当前功能块及其实例名插入到哈希表中,否则记录错误信息“实例名重复”。
优选的,按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的功能块进行纠错,若有错误信息则记录错误信息,具体为:
按照功能块排序遍历程序组织单元中的所有功能块,若当前功能块的类型为具有KKS码的功能块,则查找预设的由KKS码和功能块组成的哈希表,若哈希表中没有与当前功能块的KKS码相同的KKS码,则将当前功能块及其KKS码插入哈希表,否则记录错误信息“KKS码重复”。
优选的,还包括:
将所有错误信息以列表的形式进行可视化展示,列表中的每一条列表项代表一条逻辑组态错误。
进一步的,还包括:
获取列表项点击信息,根据列表项点击信息,跳转到相应的逻辑组态错误对应的位置。
分散控制系统逻辑组态编译纠错系统,包括:
获取模块,用于将组态工具中当前的逻辑组态页保存为程序组织单元;
编译模块,用于建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息;
排序模块,用于在建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序;
纠错模块,按照功能块排序遍历程序组织单元中的所有功能块,对功能块的实例名进行纠错,若有错误信息则记录错误信息;按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的功能块进行纠错,若有错误信息则记录错误信息;
汇总模块,用于在纠错完成后,得到编译结果,汇总所有错误信息。
与现有技术相比,本发明具有以下有益的技术效果:
本发明在编译的过程中进行纠错,通过组态工具的编译功能检查逻辑组态中存在的错误信息,替代原有的人工手动纠错,提升了纠错的准确性,提高了效率,避免了误判,帮助工程人员及时发现组态错误。本发明结合KKS码的命名特征,其具有唯一性,确保查重的准确性。通过采用编译前进行纠错的方法,避免了将错误的组态下装到控制器,从而执行相应的错误逻辑,导致设备误动作,极大的避免了生产中存在的安全隐患。
进一步的,通过可视化展示的结果能够快速从上千页组态逻辑中快速定位到出错的部分,大大提高了纠错的效率。
附图说明
图1为本发明分散控制系统逻辑组态编译纠错方法的流程图。
具体实施方式
下面结合具体的实施例对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。
如图1,本发明所述的一种分散控制系统逻辑组态编译纠错方法,包括:
将组态工具中当前的逻辑组态页保存为程序组织单元;
建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息;
建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序;
按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息;
按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的当前功能块进行纠错,若有错误信息则记录错误信息;
纠错完成后,得到编译结果,汇总所有错误信息。
本发明具体操作可描述为:
(1)将当前组态工具的逻辑组态页保存为程序组织单元(POU),程序组织单元包括的信息有:逻辑组态页的编号,逻辑组态页名称,逻辑组态页所属的任务等级,以及逻辑组态页中的功能块集合、连接线集合和中继点集合。连接线集合中的信息包括:连接线编号、连接线起始位置的功能块编号和连接线终止位置的功能块编号;功能块集合中的信息包括:功能块编号、功能块输入节点和功能块输出节点。
(2)利用程序组织单元中的信息,建立功能块之间的连接关系,在建立连接关系的过程中进行纠错;具体的建立过程如下:
1)遍历程序组织单元中的所有连接线,获取当前连接线起始位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的起始位置功能块。若没有找到相应的功能块,则表示当前连接线起始节点没有连接到功能块,属于逻辑组态错误,将错误信息Undefined_start_node写入编译结果。
2)遍历程序组织单元中的所有连接线,获取当前连接线终止位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的终止位置功能块,若没有找到相应的功能块,则表示当前连接线终止节点没有连接到功能块,属于逻辑组态错误,将错误信息Undefined end node写入编译结果。
3)遍历程序组织单元中的所有功能块,若当前功能块的类型为中继点类型,则需要将当前功能块(即中继点)的起始节点合并到与当前功能块同源的功能块的起始节点,合并的方法具体为:
查找当前功能块的输入节点,获取到输入节点之后,查找连接到输入节点的连接线,获取连接到输入节点的连接线的起始位置功能块;再查找当前功能块的输出节点,获取到输出节点之后,查找连接到输出节点的连接线,获取连接到输出节点的连接线的终止位置功能块;将连接到输入节点的连接线的起始功能块与连接到输出节点的连接线的终止位置功能块之间建立连接线,此时就相当于将中继点的起始节点合并到与之同源的功能块的起始节点,达到中继点合并的目的。
4)重新遍历程序组织单元中的所有连接线,此时连接线都已经具有起始位置功能块以及终止位置功能块,获取当前连接线的起始位置功能块,若起始位置功能块的类型为中继点类型,则属于逻辑组态错误,将错误信息Link with LinkDot写入编译结果。
(3)将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序。
(4)按照功能块排序遍历程序组织单元中的所有功能块,获取当前功能块的实例名,若实例名为空,则为逻辑组态错误,将错误信息“实例名为空”写入编译结果;若实例名不为空,则查询预设的存储功能块及实例名的哈希表,若在哈希表中没有查询到与当前功能块的实例名相同的实例名,则将当前功能块及其实例名插入到哈希表中,否则就是出现功能块的实例名重复,属于逻辑组态错误,则将错误信息“实例名重复”写入编译结果中。该步骤检查功能块的实例名是否重复,避免功能块的实例名重复,导致组态运行出现错误。
(5)按照功能块排序遍历程序组织单元中的所有功能块,如果当前功能块类型为具有KKS码的功能块,则查找预设的由KKS码(电厂标识系统码)和功能块组成的哈希表,若哈希表中没有与当前功能块的KKS码相同的KKS码,则将当前功能块及其KKS码插入哈希表,若查询到与当前功能块的KKS相同的KKS码,则属于逻辑组态错误,将错误信息“KKS码重复”写入编译结果中。
(6)完成整个逻辑组态页的编译过程,得到最终的编译结果,若最终的编译结果中具有错误信息,汇总所有错误信息,以列表的形式进行可视化展示,列表中的每一列表项代表一条错误,单击每条列表项,可以自动跳转到上位机中组态发生错误的位置,并且相应的出错元素会显示外包围框,表示当前元素处于选定状态;若最终的编译结果中没有错误信息,则组态编译成功,无错误。
下述为本发明的装置实施例,可以用于执行本发明方法实施例。对于装置实施例中未纰漏的细节,请参照本发明方法实施例。
本发明再一实施例中,提供一种分散控制系统逻辑组态编译纠错系统,能够用于实现上述的分散控制系统逻辑组态编译纠错方法,具体的,该分散控制系统逻辑组态编译纠错系统包括获取模块、编译模块、排序模块、纠错模块和汇总模块。
获取模块:用于将组态工具中当前的逻辑组态页保存为程序组织单元;
编译模块:用于建立程序组织单元中功能块之间的连接关系,在该过程中进行纠错,若有错误信息则记录错误信息;
排序模块:用于在建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序;
纠错模块:功能块排序后,按照功能块排序遍历程序组织单元中的所有功能块,对功能块的实例名进行纠错,若有错误信息则记录错误信息;功能块排序后,按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的功能块进行纠错,若有错误信息则记录错误信息;
汇总模块:用于在纠错完成后,得到编译结果,汇总所有错误信息。
本发明再一个实施例中,提供了一种计算机设备,该计算机设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于分散控制系统逻辑组态编译纠错方法的操作。
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关分散控制系统逻辑组态编译纠错方法的相应步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (9)

1.一种分散控制系统逻辑组态编译纠错方法,其特征在于,包括:
将组态工具中当前的逻辑组态页保存为程序组织单元;
建立程序组织单元中功能块之间的连接关系,在建立程序组织单元中功能块之间的连接关系的过程中进行纠错,若有错误信息则记录错误信息;
建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序;
按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息;
按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的当前功能块进行纠错,若有错误信息则记录错误信息;
纠错完成后,得到编译结果,汇总所有错误信息;
其中,建立程序组织单元中功能块之间的连接关系,在建立程序组织单元中功能块之间的连接关系的过程中进行纠错,若有错误信息则记录错误信息,具体为:
步骤1)、遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块和终止位置功能块,在该过程中进行纠错,若有错误信息则记录错误信息;
步骤2)、遍历程序组织单元中的所有功能块,若当前功能块的类型为中继点类型,则将当前功能块的起始节点合并到与当前功能块同源的功能块的起始节点;
步骤3)、重新遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块,若起始位置功能块的类型为中继点类型,则属于逻辑组态错误,记录错误信息Link withLinkDot。
2.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,步骤1)中,遍历程序组织单元中的所有连接线,获取连接线的起始位置功能块,具体为:
遍历程序组织单元中的所有连接线,获取当前连接线起始位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的起始位置功能块;若没有找到相应的功能块,则记录错误信息Undefined_start_node。
3.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,步骤1)中,遍历程序组织单元中的所有连接线,获取连接线的终止位置功能块,具体为:
遍历程序组织单元中的所有连接线,获取当前连接线终止位置的功能块编号,根据该功能块编号在程序组织单元中查找相应的功能块,若找到相应的功能块,则将此功能块设置为当前连接线的终止位置功能块,若没有找到相应的功能块,则记录错误信息Undefinedend node。
4.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,步骤2)中,将当前功能块的起始节点合并到与当前功能块同源的功能块的起始节点,具体为:
获取当前功能块的输入节点,查找连接到输入节点的连接线,获取连接到输入节点的连接线的起始位置功能块;再获取当前功能块的输出节点,查找连接到输出节点的连接线,获取连接到输出节点的连接线的终止位置功能块;在连接到输入节点的连接线的起始功能块与连接到输出节点的连接线的终止位置功能块之间建立连接线。
5.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,按照功能块排序遍历程序组织单元中的所有功能块,对当前功能块的实例名进行纠错,若有错误信息则记录错误信息,具体为;
按照功能块排序遍历程序组织单元中的所有功能块,获取当前功能块的实例名,若实例名为空,则为逻辑组态错误,记录错误信息“实例名为空”;若实例名不为空,则查询预设的存储功能块及实例名的哈希表,若在哈希表中没有查询到与当前功能块的实例名相同的实例名,则将当前功能块及其实例名插入到哈希表中,否则记录错误信息“实例名重复”。
6.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的功能块进行纠错,若有错误信息则记录错误信息,具体为:
按照功能块排序遍历程序组织单元中的所有功能块,若当前功能块的类型为具有KKS码的功能块,则查找预设的由KKS码和功能块组成的哈希表,若哈希表中没有与当前功能块的KKS码相同的KKS码,则将当前功能块及其KKS码插入哈希表,否则记录错误信息“KKS码重复”。
7.根据权利要求1所述的分散控制系统逻辑组态编译纠错方法,其特征在于,还包括:
将所有错误信息以列表的形式进行可视化展示,列表中的每一条列表项代表一条逻辑组态错误。
8.根据权利要求7所述的分散控制系统逻辑组态编译纠错方法,其特征在于,还包括:
获取列表项点击信息,根据列表项点击信息,跳转到相应的逻辑组态错误对应的位置。
9.分散控制系统逻辑组态编译纠错系统,其特征在于,包括:
获取模块,用于将组态工具中当前的逻辑组态页保存为程序组织单元;
编译模块,用于建立程序组织单元中功能块之间的连接关系,在建立程序组织单元中功能块之间的连接关系的过程中进行纠错,若有错误信息则记录错误信息;具体为:遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块和终止位置功能块,在该过程中进行纠错,若有错误信息则记录错误信息;遍历程序组织单元中的所有功能块,若当前功能块的类型为中继点类型,则将当前功能块的起始节点合并到与当前功能块同源的功能块的起始节点;重新遍历程序组织单元中的所有连接线,获取当前连接线的起始位置功能块,若起始位置功能块的类型为中继点类型,则属于逻辑组态错误,记录错误信息Linkwith LinkDot;
排序模块,用于在建立程序组织单元中功能块之间的连接关系之后,将程序组织单元中的功能块按照功能块执行顺序进行排序,得到功能块排序;
纠错模块,按照功能块排序遍历程序组织单元中的所有功能块,对功能块的实例名进行纠错,若有错误信息则记录错误信息;按照功能块排序遍历程序组织单元中的所有功能块,对具有KKS码的功能块进行纠错,若有错误信息则记录错误信息;
汇总模块,用于在纠错完成后,得到编译结果,汇总所有错误信息。
CN202110985559.4A 2021-08-26 2021-08-26 一种分散控制系统逻辑组态编译纠错方法和系统 Active CN113434328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110985559.4A CN113434328B (zh) 2021-08-26 2021-08-26 一种分散控制系统逻辑组态编译纠错方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110985559.4A CN113434328B (zh) 2021-08-26 2021-08-26 一种分散控制系统逻辑组态编译纠错方法和系统

Publications (2)

Publication Number Publication Date
CN113434328A CN113434328A (zh) 2021-09-24
CN113434328B true CN113434328B (zh) 2021-11-30

Family

ID=77798007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110985559.4A Active CN113434328B (zh) 2021-08-26 2021-08-26 一种分散控制系统逻辑组态编译纠错方法和系统

Country Status (1)

Country Link
CN (1) CN113434328B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113568398B (zh) * 2021-09-26 2021-12-07 西安热工研究院有限公司 一种分散控制系统组态删除方法和系统
CN113741411B (zh) * 2021-11-08 2022-02-01 西安热工研究院有限公司 一种分散控制系统全局变量点产物文件生成方法和系统
CN113778038B (zh) * 2021-11-09 2022-02-11 西安热工研究院有限公司 一种分散控制系统离线组态对比方法和系统
CN113791595B (zh) * 2021-11-15 2022-02-11 西安热工研究院有限公司 分散控制系统测点数据导入方法、系统、设备及介质
CN113779324B (zh) * 2021-11-15 2022-03-01 西安热工研究院有限公司 一种交叉参考同步处理方法、系统、设备及介质
CN113778043B (zh) * 2021-11-15 2022-02-11 西安热工研究院有限公司 一种组态工具数据点引用跳转方法、系统、设备及介质
CN113791594B (zh) * 2021-11-15 2022-02-11 西安热工研究院有限公司 一种分散控制系统的组态创建方法、系统、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667837A (zh) * 2009-08-21 2010-03-10 苏州国芯科技有限公司 一种基于理德-所罗门码的ecc控制器
CN106155023A (zh) * 2016-08-04 2016-11-23 南京国电南自美卓控制系统有限公司 一种通用型分散控制系统的防误操作系统及其方法
CN108053860A (zh) * 2018-01-12 2018-05-18 江苏华存电子科技有限公司 一种编译码系统使用多种错误纠正码组合的方法
CN108345279A (zh) * 2018-01-29 2018-07-31 华润电力(海丰)有限公司 一种防止dcs系统控制逻辑保护误投入系统
CN113032245A (zh) * 2021-02-26 2021-06-25 深圳壹账通创配科技有限公司 错误定位识别的测试方法、装置、计算机设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484511B2 (en) * 2010-07-01 2013-07-09 Time Warner Cable Enterprises Llc Apparatus and methods for data collection, analysis and validation including error correction in a content delivery network
CN104881253A (zh) * 2015-05-25 2015-09-02 东莞天意电子有限公司 一种纠错参数无限制的阵列纠删码方法
CN106940640A (zh) * 2016-01-04 2017-07-11 阿里巴巴集团控股有限公司 一种针对错误输入信息的页面定位方法及装置
CN108375952A (zh) * 2018-03-08 2018-08-07 山东超越数控电子股份有限公司 一种plc连续功能图编译和解释方法与装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667837A (zh) * 2009-08-21 2010-03-10 苏州国芯科技有限公司 一种基于理德-所罗门码的ecc控制器
CN106155023A (zh) * 2016-08-04 2016-11-23 南京国电南自美卓控制系统有限公司 一种通用型分散控制系统的防误操作系统及其方法
CN108053860A (zh) * 2018-01-12 2018-05-18 江苏华存电子科技有限公司 一种编译码系统使用多种错误纠正码组合的方法
CN108345279A (zh) * 2018-01-29 2018-07-31 华润电力(海丰)有限公司 一种防止dcs系统控制逻辑保护误投入系统
CN113032245A (zh) * 2021-02-26 2021-06-25 深圳壹账通创配科技有限公司 错误定位识别的测试方法、装置、计算机设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Yunosuke Teshima.Bug Detection Based on LSTM Networks and Solution Codes.《2018 IEEE International Conference on Systems, Man, and Cybernetics (SMC)》.2018, *
何伟等.运行服务器上的一种纠错技术研究和探讨.《电脑开发与应用》.2008,(第11期), *

Also Published As

Publication number Publication date
CN113434328A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN113434328B (zh) 一种分散控制系统逻辑组态编译纠错方法和系统
CN107341102B (zh) 一种测试用例文件生成方法及装置
CN108121774B (zh) 一种数据表备份方法及终端设备
CN111125067B (zh) 数据维护方法及装置
CN102981956B (zh) overlay符号表建立和查找的方法、装置及程序调制系统
CN112817883A (zh) 接口平台的适配方法、设备、系统及计算机可读存储介质
CN108241543B (zh) 业务操作断点执行的方法、业务服务器及系统
CN109508204B (zh) 一种前端代码质量检测方法及装置
CN116560697A (zh) Dbc数据库同步方法、装置、电子设备及可读存储介质
CN113791594B (zh) 一种分散控制系统的组态创建方法、系统、设备及介质
CN114326642B (zh) 用于核电dcs系统的接口匹配方法、装置、设备和介质
CN115328771A (zh) 测试工具的故障测试方法、装置、设备及介质
CN111400245B (zh) 美术资源迁移方法及装置
CN114579147A (zh) 烧录校验方法、装置、终端设备及存储介质
CN113778038B (zh) 一种分散控制系统离线组态对比方法和系统
CN113759859B (zh) 一种分散控制系统在线组态对比方法和系统
CN111338956A (zh) 一种自动化的压测方法、装置、设备和存储介质
CN109766076B (zh) 一种流程控制方法、装置和存储介质
CN114448851B (zh) 一种数据自动化测试方法及系统
CN111522737B (zh) 一种前端界面的自动化测试校验方法、装置及存储介质
CN115545055A (zh) 一种车辆识别码的处理方法、装置、设备及介质
CN103514093B (zh) 嵌入式系统字库测试方法及装置
CN114385550A (zh) 焊点连接文件转换方法、装置、终端设备及介质
CN111563113A (zh) 异常数据修正方法及装置
JP2023161659A (ja) 計算機システム及び時系列データのエラー補正方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant