[发明专利]PLC程序到NuSMV输入模型的自动化构建方法有效
申请号: | 201710382639.4 | 申请日: | 2017-05-26 |
公开(公告)号: | CN107193745B | 公开(公告)日: | 2019-10-29 |
发明(设计)人: | 魏强;常天佑;麻荣宽;耿洋洋;刘雯雯 | 申请(专利权)人: | 中国人民解放军信息工程大学;上海红神信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G05B19/05 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 陈大通 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 构建 邻接表 抽象语法树 控制流图 取值变化 状态转换 语法 自动化 工业自动化控制 工业控制系统 安全性验证 数据流分析 准确度 程序解析 模型检测 语句生成 语言语句 控制流 算法 语言 分析 | ||
本发明涉及工业自动化控制技术领域,特别是涉及一种PLC程序到NuSMV输入模型的自动化构建方法,包括对PLC的ST语言进行分析,构建ST语言的语法;根据给出的ST语法对ST程序进行处理,将ST程序解析为抽象语法树AST;对抽象语法树AST进行处理,分析ST语言语句的控制流特征,确定各语句生成控制流图CFG的算法;根据控制流图CFG对ST程序进行数据流分析,构建状态转换邻接表和变量取值变化邻接表;根据构建的状态转换邻接表和变量取值变化邻接表生成NuSMV输入模型。本发明大大提高NuSMV工具对PLC程序进行模型检测的效率和准确度,实现对工业控制系统PLC代码的安全性验证。
技术领域
本发明涉及工业自动化控制技术领域,特别是涉及一种PLC程序到NuSMV输入模型的自动化构建方法。
背景技术
工业控制系统广泛应用到工业自动化控制领域,比如电力、石油、国防科技等国家基础设施,以及食品、医药、交通等民生领域。工控安全事关经济发展、社会稳定和国家安全。近年来,随着信息化和工业化深入融合,工业控制系统从单机走向互联,从封闭走向开放,从自动化走向智能化,但同时也给工业控制系统安全带来前所未有的挑战。
工业控制器,即可编程逻辑控制器(PLC)作为工业控制系统的大脑,是一种专门用于工业控制的计算机,通过其上运行的业务代码控制整个系统的运行,PLC代码的安全直接管关系到整个工业控制系统的安全。可编程逻辑控制器支持梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)等多种编程语言。PLC代码安全主要包括两个方面:一是PLC代码自身存在的代码缺陷,比如空指针引用、数组下标越界、无效跳转、无限循环、冗余代码等代码缺陷,二是PLC代码违反安全需求,比如状态冲突、时序冲突、传感器阈值、控制量阈值等安全需求规约。
PLC代码缺陷的发现及安全规约违反验证主要采用模型检测的方法,此方法成为工业控制系统安全防护中最基本最有效的方法。目前研究中主要有三种模型检测工具,一种是基于SMV的模型检测工具,包含符号模型检测技术和二元决策图,分为NuSMV和CadenceSMV两种类型。另一种是基于时间自动机,其大部分来自于UPPAAL家族或Krono。第三种是SPIN`模型检查器。NuSMV是基于SMV的模型检测工具,广泛应用于可编程逻辑控制器缺陷代码的发现,但是NuSMV不能直接对PLC源程序进行处理,只能手工将源程序翻译为NuSMV输入模型,然后再进行模型检测,不仅浪费大量的人力,而且容易出错。而目前国内外关于PLC程序的研究主要是定义PLC程序指称语义的格局、程序语言的语义函数,但这些研究仅停留在简单对PLC程序语义的形式化定义上面。
发明内容
针对现有技术中存在的缺陷,本发明提供了一种PLC程序到NuSMV输入模型的自动化构建方法,大大提高NuSMV工具对PLC程序进行模型检测的效率和准确度,实现对工业控制系统PLC代码的安全性验证。
为了实现上述目的,本发明采用以下的技术方案:
一种PLC程序到NuSMV输入模型的自动化构建方法,包括以下步骤:
步骤1,对PLC的ST语言进行分析,构建ST语言的语法;
步骤2,根据步骤1给出的ST语法对ST程序进行处理,将ST程序解析为抽象语法树AST;
步骤3,对抽象语法树AST进行处理,分析ST语言语句的控制流特征,确定各语句生成控制流图CFG的算法;
步骤4,根据控制流图CFG对ST程序进行数据流分析,构建状态转换邻接表和变量取值变化邻接表;
步骤5,根据步骤4构建的状态转换邻接表和变量取值变化邻接表生成NuSMV输入模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军信息工程大学;上海红神信息技术有限公司,未经中国人民解放军信息工程大学;上海红神信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710382639.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种笔记本电脑电池供电控制电路及控制方法
- 下一篇:一种缓冲撞击型逆止阀