一种基于语义分析的NC文件安全检测方法及系统与流程

摘要: 本发明涉及安全检测控制,尤其涉及一种基于语义分析的nc文件安全检测方法及系统。背景技术:1、目前,数控机床在执行代码加工前,通常从本地存储或网络传输获取nc文件...
一种基于语义分析的NC文件安全检测方法及系统与流程

本发明涉及安全检测控制,尤其涉及一种基于语义分析的nc文件安全检测方法及系统。

背景技术:

1、目前,数控机床在执行代码加工前,通常从本地存储或网络传输获取nc文件,并通过基于规则的特征匹配、指令白名单和语法校验等方式进行安全检查。这些方法通过逐行扫描指令码和参数,判断其是否超出合法区间或包含禁用组合,虽能拦截明显语法错误,但无法对指令序列中的语义关联和加工逻辑进行建模,难以表征正常加工行为的动态上下文。

2、例如,攻击者可通过对合法加工程序进行微小、语法合规的修改实施攻击,如在连续直线插补中微调进给速度、在换刀前瞬时修改主轴转速,或插入冗余空切路径。这些修改的单条指令均不违反安全规则,但组合后却可能导致刀具异常磨损或引发撞刀、主轴超速等严重事故。传统特征匹配方法因无法捕获指令间长距离依赖和隐含恶意语义,误报率高,且对未知攻击几乎无检测能力。

3、因此,亟需一种在nc指令序列语义分析中,能够训练lstm模型以生成指令语义向量并定义正常加工语义包络的方法,使得即使在面临微小但可能导致撞刀、超速等危险后果的指令篡改时,仍能通过构建正常语义偏差度量来识别异常,从而提高对变形恶意指令的检出率并降低误报率。

技术实现思路

1、针对上述存在的技术不足,本发明的目的是提出一种基于语义分析的nc文件安全检测方法,旨在解决现有技术中依赖特征匹配难以捕获指令间长距离依赖和隐含恶意语义,尤其是在微小指令篡改可导致撞刀、超速等危险后果的条件下,无法识别序列语义异常的技术问题。

2、为解决上述技术问题,本发明采用如下技术方案:本发明提供一种基于语义分析的nc文件安全检测方法。

3、所述一种基于语义分析的nc文件安全检测方法包括:

4、步骤s10:获取nc文件检测数据集,基于所述nc文件检测数据集,采用murmurhash3特征哈希与min-max归一化相结合的指令向量化机制执行指令向量化任务,输出指令联合输入向量数据集;

5、步骤s20:基于所述指令联合输入向量数据集,采用双向长短期记忆网络与bahdanau加性注意力融合机制执行指令语义预测模型训练任务,输出模型训练结果数据;

6、步骤s30:基于所述模型训练结果数据,采用基于ledoit-wolf收缩估计的mahalanobis距离与soft-dtw联合标定机制执行异常判定参数标定任务,输出异常标定结果数据;

7、步骤s40:基于所述异常标定结果数据,采用mahalanobis距离与soft-dtw联合风险评估机制执行nc文件在线风险评估任务,输出综合风险指数;

8、步骤s50:根据所述综合风险指数,采用有限状态机分级处置机制执行风险等级处置任务,输出处置操作指令。

9、优选地,步骤s10中,获取nc文件检测数据集,基于所述nc文件检测数据集,采用murmurhash3特征哈希与min-max归一化相结合的指令向量化机制执行指令向量化任务,输出指令联合输入向量数据集的步骤,具体包括:

10、步骤s101:从所述nc文件检测数据集中提取历史安全nc文件、待检测nc文件和设备配置参数,采用正则表达式去除各nc文件中的注释、程序段号、空行和冗余空格,按照子程序调用顺序展开各子程序,并依据所述设备配置参数统一各指令参数的计量单位,输出标准化指令序列集;

11、步骤s102:基于所述标准化指令序列集,按照指令行划分指令码、轴标识符和数值参数,采用murmurhash3特征哈希将所述指令码和所述轴标识符映射至固定维度编码空间,并保留所述数值参数及对应的参数标识,输出指令解析特征序列集;

12、步骤s103:基于所述指令解析特征序列集,确定各指令行对应的指令语义编码、空间合成位移量、进给速度、主轴转速、切削进给状态、快速移动状态和工艺状态向量,采用min-max归一化对所述空间合成位移量、所述进给速度和所述主轴转速进行归一化处理,将归一化处理结果、所述切削进给状态、所述快速移动状态、所述工艺状态向量和所述指令语义编码进行拼接,输出所述指令联合输入向量数据集;

13、其中,所述工艺状态向量包括刀具编号、坐标系编号、加工平面标识、主轴启停标识和冷却液启停标识;所述指令联合输入向量数据集包括由所述历史安全nc文件形成的训练联合输入向量序列和校准联合输入向量序列,以及由所述待检测nc文件形成的待检测指令联合输入向量序列。

14、优选地,步骤s20中,基于所述指令联合输入向量数据集,采用双向长短期记忆网络与bahdanau加性注意力融合机制执行指令语义预测模型训练任务,输出模型训练结果数据的步骤,具体包括:

15、步骤s201:从所述指令联合输入向量数据集中提取所述训练联合输入向量序列,将各指令行对应的指令语义编码映射为指令语义嵌入向量,将各指令行对应的归一化空间合成位移量、归一化进给速度、归一化主轴转速、切削进给状态和快速移动状态映射为物理效应嵌入向量,并将同一指令行对应的指令语义嵌入向量、物理效应嵌入向量和工艺状态向量进行拼接,输出训练融合表征序列集;

16、步骤s202:基于所述训练融合表征序列集,采用双向长短期记忆网络提取各指令行的双向时序隐藏状态,采用bahdanau加性注意力计算各历史时刻的双向时序隐藏状态相对于当前工艺状态向量的注意力权重,并根据所述注意力权重对各历史时刻的双向时序隐藏状态进行加权汇聚,输出融合上下文序列集;

17、步骤s203:基于所述融合上下文序列集,预测下一指令行对应的物理效应向量,所述物理效应向量的前三个维度依次为归一化空间合成位移量、归一化进给速度和归一化主轴转速,后两个维度依次为切削进给状态和快速移动状态;采用连续物理量预测误差与二元交叉熵组合的训练损失更新所述双向长短期记忆网络和所述bahdanau加性注意力的模型参数,直至满足预设训练终止条件,得到待标定指令语义预测模型;将所述待标定指令语义预测模型、所述校准联合输入向量序列和所述待检测指令联合输入向量序列组合为所述模型训练结果数据;

18、其中,预设训练终止条件为训练轮次达到预设训练轮次,或者相邻训练轮次对应的训练损失差值小于预设损失差值阈值。

19、优选地,步骤s203中,采用连续物理量预测误差与二元交叉熵组合的训练损失更新所述双向长短期记忆网络和所述bahdanau加性注意力的模型参数,具体为:

20、;

21、;

22、其中,为训练损失,为所述训练联合输入向量序列中的有效指令行数量且大于1,为指令行时刻序号,为物理效应向量的维度序号,为下一指令行对应的预测物理效应向量在第个维度的预测值,为下一指令行对应的实际物理效应向量在第个维度的实际值;当取1至3时,对应维度依次为归一化空间合成位移量、归一化进给速度和归一化主轴转速,当取4或5时,对应维度依次为切削进给状态和快速移动状态;为第个维度对应的预设维度权重系数,各预设维度权重系数均为非负数且总和为1,为二元交叉熵函数,为状态发生概率预测值,为取值为0或1的实际状态值,为预设正数,表示自然对数函数。

23、优选地,步骤s30中,基于所述模型训练结果数据,采用基于ledoit-wolf收缩估计的mahalanobis距离与soft-dtw联合标定机制执行异常判定参数标定任务,输出异常标定结果数据的步骤,具体包括:

24、步骤s301:从所述模型训练结果数据中提取所述待标定指令语义预测模型和所述校准联合输入向量序列,采用所述待标定指令语义预测模型逐时刻获得所述校准联合输入向量序列对应的预测物理效应向量,确定各预测物理效应向量与对应实际物理效应向量之间的校准残差向量,确定相邻时刻之间的进给速度一阶差分绝对值,并按照各历史安全nc文件分别组合预测物理效应向量序列和实际物理效应向量序列,输出校准偏差数据集;

25、步骤s302:基于所述校准偏差数据集,采用ledoit-wolf收缩估计确定残差协方差矩阵,采用mahalanobis距离确定各校准残差向量的多变量偏离程度,将各多变量偏离程度的99.9%分位数确定为指令物理效应残差包络上限,将各进给速度一阶差分绝对值的99.5%分位数确定为进给趋势连续性包络上限;采用soft-dtw确定各预测物理效应向量序列与对应实际物理效应向量序列之间的序列对齐距离,并将各序列对齐距离中的最大值确定为序列逻辑对齐包络上限,输出异常判定参数集;

26、步骤s303:基于所述异常判定参数集,将所述残差协方差矩阵、所述指令物理效应残差包络上限、所述进给趋势连续性包络上限和所述序列逻辑对齐包络上限写入所述待标定指令语义预测模型,并将写入后的指令语义预测模型、所述异常判定参数集和所述待检测指令联合输入向量序列组合为所述异常标定结果数据。

27、优选地,步骤s40中,基于所述异常标定结果数据,采用mahalanobis距离与soft-dtw联合风险评估机制执行nc文件在线风险评估任务,输出综合风险指数的步骤,具体包括:

28、步骤s401:从所述异常标定结果数据中提取写入后的指令语义预测模型和所述待检测指令联合输入向量序列,采用写入后的指令语义预测模型逐时刻获得所述待检测指令联合输入向量序列对应的预测物理效应向量,确定各预测物理效应向量与对应实际物理效应向量之间的待检测残差向量,确定相邻时刻之间的待检测进给速度一阶差分绝对值,并组合所述待检测nc文件对应的预测物理效应向量序列和实际物理效应向量序列,输出待检测偏差数据集;

29、步骤s402:基于所述待检测偏差数据集和所述异常判定参数集,采用所述残差协方差矩阵和mahalanobis距离确定各待检测残差向量的待检测多变量偏离程度,采用soft-dtw确定所述预测物理效应向量序列与所述实际物理效应向量序列之间的待检测序列对齐距离,并将所述待检测多变量偏离程度、所述待检测进给速度一阶差分绝对值和所述待检测序列对齐距离组合为风险分量数据集;

30、步骤s403:基于所述风险分量数据集,按照下式分别计算物理效应偏离得分、进给趋势突变得分和序列逻辑失配得分,并对各得分进行加权求和,得到所述综合风险指数:

31、;

32、;

33、;

34、;

35、其中,为物理效应偏离得分,为进给趋势突变得分,为序列逻辑失配得分,为综合风险指数,为预设物理效应偏离权重系数,为预设进给趋势突变权重系数,为预设序列逻辑失配权重系数,且、和均为非负数并且三者之和为1;为所述待检测指令联合输入向量序列的有效时刻数量且大于1,为时刻序号,为第个时刻对应的待检测多变量偏离程度,为所述指令物理效应残差包络上限,为第个时刻对应的待检测进给速度一阶差分绝对值,为所述进给趋势连续性包络上限,为所述待检测序列对齐距离,为所述序列逻辑对齐包络上限,为预设正数,表示自然对数函数,表示取最大值运算。

36、优选地,步骤s50中,根据所述综合风险指数,采用有限状态机分级处置机制执行风险等级处置任务,输出处置操作指令的步骤,具体包括:

37、步骤s501:将所述综合风险指数分别与预设高风险阈值、预设中风险阈值和预设低风险阈值进行比较;当所述综合风险指数大于或等于预设高风险阈值时,确定高风险等级;当所述综合风险指数小于预设高风险阈值且大于或等于预设中风险阈值时,确定中风险等级;当所述综合风险指数小于预设中风险阈值且大于或等于预设低风险阈值时,确定低风险等级;当所述综合风险指数小于预设低风险阈值时,确定安全等级,输出风险等级标识;

38、步骤s502:基于所述风险等级标识,将所述高风险等级映射至禁止加载状态,将所述中风险等级映射至隔离审核状态,将所述低风险等级映射至记录确认状态,并将所述安全等级映射至正常加载状态,输出目标处置状态;

39、步骤s503:根据所述目标处置状态生成所述处置操作指令;在所述禁止加载状态下,生成程序禁止加载指令并触发报警;在所述隔离审核状态下,生成程序隔离指令并向制造执行系统发送审核请求;在所述记录确认状态下,生成异常记录指令,并在接收到操作人员的确认信号后生成受控加载指令;在所述正常加载状态下,生成正常加载指令;

40、其中,预设高风险阈值大于预设中风险阈值,预设中风险阈值大于预设低风险阈值。

41、本发明还提供一种基于语义分析的nc文件安全检测系统,所述基于语义分析的nc文件安全检测系统包括:

42、指令向量化模块,用于获取nc文件检测数据集,基于所述nc文件检测数据集,采用murmurhash3特征哈希与min-max归一化相结合的指令向量化机制执行指令向量化任务,输出指令联合输入向量数据集;

43、模型训练模块,用于基于所述指令联合输入向量数据集,采用双向长短期记忆网络与bahdanau加性注意力融合机制执行指令语义预测模型训练任务,输出模型训练结果数据;

44、参数标定模块,用于基于所述模型训练结果数据,采用基于ledoit-wolf收缩估计的mahalanobis距离与soft-dtw联合标定机制执行异常判定参数标定任务,输出异常标定结果数据;

45、风险评估模块,用于基于所述异常标定结果数据,采用mahalanobis距离与soft-dtw联合风险评估机制执行nc文件在线风险评估任务,输出综合风险指数;

46、分级处置模块,用于根据所述综合风险指数,采用有限状态机分级处置机制执行风险等级处置任务,输出处置操作指令。

47、本发明还提供一种基于语义分析的nc文件安全检测设备,所述基于语义分析的nc文件安全检测设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于语义分析的nc文件安全检测程序,所述基于语义分析的nc文件安全检测程序被所述处理器执行时实现上述方法。

48、本发明还提供一种计算机程序产品,所述计算机程序产品包括基于语义分析的nc文件安全检测程序,所述基于语义分析的nc文件安全检测程序被处理器执行时实现上述方法。

49、本发明的有益效果在于:

50、1.本发明通过对历史安全nc文件、待检测nc文件和设备配置参数进行标准化处理,按照子程序调用顺序恢复实际指令流,并采用murmurhash3特征哈希将指令码及轴标识符映射至固定维度编码空间,同时保留数值参数及其参数标识;在此基础上,进一步确定空间合成位移量、进给速度、主轴转速、切削进给状态、快速移动状态和工艺状态向量,并对连续物理量实施min-max归一化后形成指令联合输入向量数据集。由此能够压缩注释、程序段号、书写格式和计量单位造成的无关差异,同时保留每条指令的文本语义、物理作用强度及工艺状态,使数值仍处于合法范围但与前后加工阶段不协调的微小参数修改能够在统一特征尺度上形成可识别差异。

51、2.本发明利用双向长短期记忆网络提取指令序列的双向时序隐藏状态,并通过bahdanau加性注意力根据当前工艺状态对历史隐藏状态进行加权汇聚,使模型能够结合刀具、坐标系、加工平面、主轴及冷却液状态选择与当前加工阶段相关的历史指令信息,改善长距离指令依赖和工艺状态切换条件下的下一指令物理效应预测。在模型训练后,进一步采用ledoit-wolf收缩估计获得稳定的残差协方差矩阵,以mahalanobis距离的99.9%分位数确定指令物理效应残差包络上限,以进给速度一阶差分绝对值的99.5%分位数确定进给趋势连续性包络上限,并以安全程序的最大soft-dtw序列对齐距离确定序列逻辑对齐包络上限,使正常加工边界同时反映多变量物理效应关联、局部速度变化和完整程序逻辑,减少单一固定阈值造成的误报与漏报。

52、3.本发明在在线检测阶段分别依据mahalanobis距离、进给速度一阶差分绝对值和soft-dtw序列对齐距离计算物理效应偏离得分、进给趋势突变得分和序列逻辑失配得分,并按照预设非负权重合成为综合风险指数,使单行参数偏离、连续速度异常和分散于多条指令中的程序节奏失配能够在同一风险尺度上协同评价。随后通过有限状态机将综合风险指数依次映射为禁止加载、隔离审核、记录确认和正常加载状态,并分别生成程序禁止加载指令、程序隔离指令、异常记录及受控加载指令或正常加载指令,使检测结果能够在nc文件进入数控设备执行队列前形成明确控制动作。