[发明专利]利用表达式解析实现工业现场底层设备监测管理的方法有效

专利信息
申请号: 201310005335.8 申请日: 2013-01-07
公开(公告)号: CN103914027A 公开(公告)日: 2014-07-09
发明(设计)人: 谢京雷;孔晓阳;王剑;沈春锋;代真虎 申请(专利权)人: 上海宝信软件股份有限公司
主分类号: G05B19/418 分类号: G05B19/418
代理公司: 上海汉声知识产权代理有限公司 31236 代理人: 郭国中
地址: 201203 上海市浦*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供了一种利用表达式解析实现工业现场底层设备监测管理的方法,步骤:第一步,用户进行表达式配置:将表达式中所包含的操作数中属于监测单元名称的操作数,用两个单引号包围起来,表达式中包含的操作符必须属于预先定义的操作符,表达式中包含的立即数在预先定义的数值范围之内;第二步,验证表达式的合法性;第三步,进行表达式解析并进行计算,将计算的结果保存起来供工业现场底层设备监测管理使用。本发明通过解决表达式解析过程中操作数的识别问题,能够更好的进行表达式的合法性检验,且在进行表达式计算时能够快速识别堆栈元素的类型,便于快速计算,提高数据统计系统的运行性能,更快速的实现现场底层设备控制回馈。
搜索关键词: 利用 表达式 解析 实现 工业 现场 底层 设备 监测 管理 方法
【主权项】:
一种利用表达式解析实现工业现场底层设备监测管理的方法,其特征在于,包括如下步骤:第一步,用户进行表达式配置:将表达式中所包含的操作数中属于监测单元名称的那些操作数,用两个单引号包围起来;第二步,验证表达式的合法性:A,根据预定义的操作符即作为操作数之间的分隔符,以及单引号包围的监测单元名称格式约定即在两个单引号包围内的操作符不作为操作符处理,识别出表达式中包含的监测单元名称,操作符和立即数,得到表达式的中缀形式;在这个处理过程中,对于从表达式中识别到的监测单元名称,根据已有的监测单元名称列表判断监测单元名称是否存在,当监测单元名称不存在时,判定表达式配置非法;对于从表达式中识别出的立即数,如果不属于预定义的数值范围,则判定表达式非法;发生其他无法完成上述处理得到中缀表达式的情况时,则判定表达式非法;B,将表达式从中缀形式转换成后缀形式,转换过程中如果发生错误,则判定表达式非法;C,对于已经转换成后缀形式的表达式,将表达式中所有的监测单元名称分别赋予简单的数值1,然后进行表达式解析,如果在计算过程中发现有的操作符无法完成计算,或者计算结束后发现用于存储计算结果的数组的大小不等于1,则判定配置的表达式是非法的;第三步.进行表达式解析并进行计算:A,将已经经过合法性检验的表达式从中缀形式转换成后缀形式;后缀表达式堆栈中的每个元素都是一个数据结构体,该数据结构体包括两个字段的数据:第一个字段是类型Type,第二个字段是数据Value,其中第一个字段用来表示第二个字段所存储的数据的类型;在统计系统中,根据表达式的组成分成三种类型:0‑操作符;1‑操作数即立即数;2‑操作数即监测单元名称;第二个字段用来存储符合第一个字段值所代表的类型的值:对于0类型,存储的就是实际的操作符;对于1类型,存储的就是实际的数值;对于2类型,存储的就是监测单元的名次;B,使用监测到的数据进行表达式计算在进行计算时,依次取出堆栈中的一个元素,根据元素的第一个字段来识别元素的类型,使用元素的第二个字段来进行计算,当元素类型是监测单元名称时,将之替换成从底层设备采集读取到的对应监测单元的实时数据值,完成计算后,将计算的结果保存起来供工业现场底层设备监测管理使用。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝信软件股份有限公司,未经上海宝信软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201310005335.8/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top