iNeuOS工业互联网操作系统,脚本化实现设备运行时长和效率计算与统计
目 录
1. 概述... 2
2. 实时采集开停状态... 2
3. 增加虚拟设备... 2
4. 脚本统计和计算设备运行时长... 4
5. 设备运行时长报表... 7
1. 概述
有一个煤矿项目,使用iNeuOS系统时有一个需要是:要统计设备的运行时长,进一步统计设备运行效率。主要是有效分析设备运行状态,合理的进行节能。
iNeuOS本身具备强大的脚本能力,需要现场实施人员有一定脚本编写能力,如果不具备脚本编写能力,那么下面的模板修改相应的参数即可。
2. 实时采集开停状态
首先能够实时读取到相应设备的开停状态,读取数据点的参数根据现场实际设备情况设置。如下图:

不iNeuKernel后台服务读取数据,如下图:

3. 增加虚拟设备
(1)增加虚拟设备
增加虚拟设备和虚拟数据点。所有虚拟设备关闭【是否启用】,如下图:

可以按实现物理层级增加相应设备一一对应的子设备,同样关闭【是否启用】,如下图:

(2)增加虚拟数据点
编辑相应的设备,在【数据点】选卡上添加数据点,如下图:

在数据点的基本信息的【点类型】选择“虚拟点”,如下图:

每台虚拟设备创新4个虚拟数据点:设备运行开始时间、设备运行停止时间、设备运行临时状态和设备运行时长。如下图:

需要统计设备运行时长都按上面的流程配置,虚拟设备层级可以灵活调整。
4. 脚本统计和计算设备运行时长
在系统桌面打开【流程控制】功能,如下图:

增加流程控制任务,如下图:

统计设备时长的脚本模板,如下脚本:
string io_signal=getvalue("i376006988762583040","signal"); //设备开停状态
//记录当前设备状态,防止重新记录
string temp_run_temp=getvalue("i386181395921375232","device_run_temp_state");
if(string.IsNullOrEmpty(temp_run_temp))
{
temp_run_temp="0";
}
if(io_signal=="1" && temp_run_temp=="0")//运行状态
{
//记录当前为开启状态
save("i386181395921375232","device_run_temp_state","1");
//记录开始运行时间点
save("i386181533603598336","device_run_sdt",DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
if(io_signal=="0" && temp_run_temp=="1")//停止状态
{
//记录当前为停止状态
save("i386181395921375232","device_run_temp_state","0");
//记录停止运行时间点
string edt=DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
save("i386181687433891840","device_run_edt",edt);
//计算时长
//获得设备运行的开始时间节点
string sdt=getvalue("i386181533603598336","device_run_sdt");
//计算时间差
TimeSpan ts = DateTime.Parse(edt) - DateTime.Parse(sdt);
//获得运行时长,单分为分钟。如果是小时:ts.TotalHours
double run_minute_num = ts.TotalMinutes;
//保存运行时长
save("i386181860411183104","device_run_minute_num",run_minute_num.ToString());
}
选择【保存】,设置流程控制名称、流程描述、是否启动和间隔时长。如下图:

当设备状态发生变化,后台服务会根据状态计算当前设备运行时长。如下图:

5. 设备运行时长报表
报表应用操作参见:《iNeuOS工业互联网操作系统,在线报表(Excel)开发工具》。
在桌面打开【报表设计】,如下图:

选择Excel的单元格,并且在右边配置相应数据点,如下图:

在运行时长单元格配置上的【统计】选择“和值”,如下图:

在【时间跨度】按需配置时间精度,如下图:

选择【保存】,在桌面上会显示配置报表的应用。如下图:

最终呈现效果,如下图:

注:一个开启和停止应该显示在一行上,这块我们再优化。
物联网&大数据技术 QQ群:54256083
物联网&大数据项目 QQ群:727664080
QQ:504547114
微信:wxzz0151
博客:https://www.cnblogs.com/lsjwq
微信公众号:iNeuOS

购买《物联网软件架构设计与实现》:京东购买。

iNeuOS工业互联网操作系统,脚本化实现设备运行时长和效率计算与统计的更多相关文章
- iNeuOS工业互联网操作系统下发命令给iNeuLink硬件网关,进一步修改设备参数和控制设备
目 录 1. 应用场景... 1 2. DCS数据采集... 2 3. 硬件网关的配置... 2 4. 平台端配置... 3 1. 应用场景 i ...
- iNeuOS工业互联网操作系统,设备运维业务和“低代码”表单开发工具
目 录 1. 概述... 2 2. 设备运维业务... 3 3. "低代码"表单开发工具... 6 1. 概述 iNeuOS工业互联网 ...
- iNeuOS工业互联网操作系统,智慧用电测控应用案例
目 录 1. 概述... 2 2. 系统部署结构... 2 3. 用电测控终端... 3 4. 系统应用介绍... 6 1. 概述 通过物联网技 ...
- iNeuOS工业互联网操作系统,在线报表(Excel)开发工具
目 录 1. 概述... 2 2. 视频介绍... 2 3. 应用过程... 2 1. 概述 iNeuOS工业互联网操作系统在线报表(Excel)工具的开 ...
- iNeuOS工业互联网操作系统,面向4个领域颁发第一批技术认证资质
为了更好的紧密合作.利益多赢和共建生态.iNeuOS工业互联网操作系统面向:仪器仪表.双碳环保.核能科学与工程和钢铁冶金领域颁发第一批技术认证资质,一共21名同志在项目实施过程中表现突出,从iNeuO ...
- iNeuOS工业互联网操作系统部署在华为欧拉(openEuler)国产系统,vmware、openEuler、postgresql、netcore、nginx、ineuos一站式部署
目 录 1. 概述... 3 2. 创建虚拟机&安装华为欧拉(openEuler)系统... 4 2.1 创建新的虚拟机... 4 2.2 ...
- iNeuOS工业互联网操作系统,矿山动态产量计量系统和铁路车辆识别系统应用场景案例
目 录 1. 概述... 2 2. 平台演示... 2 3. 矿山动态产量计量系统... 2 4. 铁路车辆识别系统... 4 1. 概述 iN ...
- iNeuLink硬件网关与iNeuOS工业互联网操作系统互联互通应用案例
目 录 1. 应用概述... 2 2. 模拟硬件设备配置... 2 3. iNeuLink硬件网关配置... 4 3.1 硬件介绍... ...
- iNeuOS工业互联网操作系统,三维(3D)模型在线编辑应用和实时数据统计(和值、均值、众数、方差、中位数等)
目 录 1. 概述... 1 2. 三维(3D)模型在线编辑与应用... 2 3. 实时数据统计... 4 1. 概述 此次,iNeuOS工业互联网操作系 ...
- iNeuOS工业互联网操作系统,在航天和军工测控领域的应用
目 录 1. 行业概述... 2 2. 解决方案... 2 3. 解决的痛点... 6 1. 行业概述 现在国际形势异常严峻,加大了偶发武装斗争的可能性. ...
随机推荐
- 面试突击84:Spring 有几种事务隔离级别?
Spring 中的事务隔离级别和数据库中的事务隔离级别稍有不同,以 MySQL 为例,MySQL 的 InnoDB 引擎中的事务隔离级别有 4 种,而 Spring 中却包含了 5 种事务隔离级别. ...
- Kibana:在Kibana中对数据进行深入分析 (drilldown)
文章转载自:https://blog.csdn.net/UbuntuTouch/article/details/105193907 在上面,我们需要把之前地址栏中拷贝的内容粘贴过来,并做相应的修改.针 ...
- Kubernetes 监控:Prometheus Operator + Thanos ---实践篇
具体参考网址:https://www.cnblogs.com/sanduzxcvbnm/p/16291296.html 本章用到的yaml文件地址:https://files.cnblogs.com/ ...
- MySQL8.0报错:Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation
MySQL8.0.16版本中新增了一个system_user帐户类型,当新增用户并赋予权限时 mysql> create user 'proxysql'@'192.168.20.%' ident ...
- 聊聊Vim的工作原理
聊聊Vim的工作原理 日常里一直在用Vim这个编辑器,前阵子学习关于Linux中的fd(文件描述符)时,发现vim的进程描述符会比上一个自动加一,后续了解到vim的工作原理后,解开了这个疑问,所以记录 ...
- 【nginx】使用 nginx 时,使用 sub_filter 注入 js 代码,例如 google analysis 等
目录 1. 创建 GA 1 2. 注入代码2 结果 网站 F12 GA 控制台 Reference 在一项工作中,已经将内网的一个网站通过 二级域名 + nginx + frp 的方式映射到公网.网站 ...
- Oracle导出和导入
导出 exp exp 用户名/密码@实例名 file=导出的dmp文件存放路径 l og=导出日志存放路径 exp hr/123456@orcl file= C:\Users\Administrato ...
- JSP页面实现验证码校验
目录 验证码校验分析 生成验证码 测试验证码 校验验证码 测试验证码校验 添加验证码刷新 在网页页面的使用中为防止"非人类"的大量操作和防止一些的信息冗余,增加验证码校验是许多网站 ...
- 萌新也能看懂的KMP算法
前言 算法是什么?算法就是数学规律.怎么去总结和发现这个规律,就是理解算法的过程. KMP算法的本质是穷举法,而并不是去创造新的匹配逻辑. 以下将搜寻的字符串称为子串(part),以P表示.被搜寻的字 ...
- Docker | redis集群部署实战
前面已经简单熟悉过redis的下载安装使用,今天接着部署redis集群(cluster),简单体会一下redis集群的高可用特性. 环境准备 Redis是C语言开发,安装Redis需要先将Redis的 ...