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. 行业概述 现在国际形势异常严峻,加大了偶发武装斗争的可能性. ...
随机推荐
- Linux使用密钥登录SSH
输入命令和上传密钥时需要注意当前目录.账号和读写权限 生成密钥 使用服务器生成(方法一,推荐) 1.1生成密钥 #ssh-keygen(这里pwd为当前账号的home目录) 1.2下载密钥 .id_r ...
- Rust变量用法与特征
变量用法与特征 变量绑定 let a = "hello world" 为何不用赋值而用绑定呢(其实你也可以称之为赋值,但是绑定的含义更清晰准确)?这里就涉及 Rust 最核心的原 ...
- Docker与Containerd使用区别
文章转载自:https://cloud.tencent.com/developer/article/1984040 Kubernetes 在 1.24 版本里弃用并移除 docker shim,这导致 ...
- Elasticsearch:inverted index,doc_values及source
以后会用到的相关知识:索引中某些字段禁止搜索,排序等操作 当我们学习Elasticsearch时,经常会遇到如下的几个概念: Reverted index doc_values source? 这个几 ...
- Elastic: 如何在阿里云上构建Elastic集群
- MongoDB 的用户和角色权限
副本和分片集群的安全设置参考这个:高级:https://files.cnblogs.com/files/sanduzxcvbnm/mongodb_advance.pdf 默认情况下,MongoDB实例 ...
- [ML从入门到入门] 支持向量机:从SVM的推导过程到SMO的收敛性讨论
前言 支持向量机(Support Vector Machine,SVM)在70年代由苏联人 Vladimir Vapnik 提出,主要用于处理二分类问题,也就是研究如何区分两类事物. 本文主要介绍支持 ...
- Anaconda安装和卸载+虚拟环境Tensorflow安装以及末尾问题大全(附Anaconda安装包),这一篇就够了!!!
前言 实话说,在自己亲手捣鼓了一下午加一晚上后,本人深深地感受到了对于"Anaconda安装+虚拟环境Tensorflow安装"里面的坑点之多,再加上目前一些博主的资料有点久远,尤 ...
- C#-2 C#程序
一 C#程序是一组类型声明 C#程序或DLL的源代码是一组一种或多种类型声明. 对于可执行程序,类型声明中必须有一个包含Main方法的类. 命名空间是一种把相关的类型声明分组并命名的方法.是类在程序集 ...
- UVA12186 工人的请愿书 Another Crisis (树形DP)
dp[i]表示要让i向上级发请愿书,最少需要多少个工人递交请愿书,因为要取前T%最小的,所以还要将i的子节点排序(这里用vector实现),取前c个最小的作为dp[i]的值. 这里用dfs可以省去dp ...