目       录

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工业互联网操作系统,脚本化实现设备运行时长和效率计算与统计的更多相关文章

  1. iNeuOS工业互联网操作系统下发命令给iNeuLink硬件网关,进一步修改设备参数和控制设备

    目       录 1.      应用场景... 1 2.      DCS数据采集... 2 3.      硬件网关的配置... 2 4.      平台端配置... 3 1.   应用场景 i ...

  2. iNeuOS工业互联网操作系统,设备运维业务和“低代码”表单开发工具

    目       录 1.      概述... 2 2.      设备运维业务... 3 3.      "低代码"表单开发工具... 6 1.   概述 iNeuOS工业互联网 ...

  3. iNeuOS工业互联网操作系统,智慧用电测控应用案例

    目       录 1.      概述... 2 2.      系统部署结构... 2 3.      用电测控终端... 3 4.      系统应用介绍... 6 1.   概述 通过物联网技 ...

  4. iNeuOS工业互联网操作系统,在线报表(Excel)开发工具

    目       录 1.      概述... 2 2.      视频介绍... 2 3.      应用过程... 2 1.   概述 iNeuOS工业互联网操作系统在线报表(Excel)工具的开 ...

  5. iNeuOS工业互联网操作系统,面向4个领域颁发第一批技术认证资质

    为了更好的紧密合作.利益多赢和共建生态.iNeuOS工业互联网操作系统面向:仪器仪表.双碳环保.核能科学与工程和钢铁冶金领域颁发第一批技术认证资质,一共21名同志在项目实施过程中表现突出,从iNeuO ...

  6. iNeuOS工业互联网操作系统部署在华为欧拉(openEuler)国产系统,vmware、openEuler、postgresql、netcore、nginx、ineuos一站式部署

    目       录 1.      概述... 3 2.      创建虚拟机&安装华为欧拉(openEuler)系统... 4 2.1           创建新的虚拟机... 4 2.2  ...

  7. iNeuOS工业互联网操作系统,矿山动态产量计量系统和铁路车辆识别系统应用场景案例

    目       录 1.      概述... 2 2.      平台演示... 2 3.      矿山动态产量计量系统... 2 4.      铁路车辆识别系统... 4 1.   概述 iN ...

  8. iNeuLink硬件网关与iNeuOS工业互联网操作系统互联互通应用案例

    目       录 1.      应用概述... 2 2.      模拟硬件设备配置... 2 3.      iNeuLink硬件网关配置... 4 3.1           硬件介绍... ...

  9. iNeuOS工业互联网操作系统,三维(3D)模型在线编辑应用和实时数据统计(和值、均值、众数、方差、中位数等)

    目       录 1.      概述... 1 2.      三维(3D)模型在线编辑与应用... 2 3.      实时数据统计... 4 1.   概述 此次,iNeuOS工业互联网操作系 ...

  10. iNeuOS工业互联网操作系统,在航天和军工测控领域的应用

    目       录 1.      行业概述... 2 2.      解决方案... 2 3.      解决的痛点... 6 1.   行业概述 现在国际形势异常严峻,加大了偶发武装斗争的可能性. ...

随机推荐

  1. Redisson多策略注解限流

    限流:使用Redisson的RRateLimiter进行限流 多策略:map+函数式接口优化if判断 自定义注解 /** * aop限流注解 */ @Target({ElementType.METHO ...

  2. 第六章:Django 综合篇 - 14:Django 日志

    Django使用Python内置的logging模块实现它自己的日志系统. 如果你没有使用过logging模块,请参考Python教程中的相关章节. 直达链接<logging模块详解>. ...

  3. 使用filebeat收集k8s上pod里的容器日志配置文件模板

    具体使用有待商榷 filebeat.inputs: - type: container paths: - /var/log/containers/*.log processors: - add_kub ...

  4. python动态参数

    Python的动态参数有两种,分别是*args和**kwargs,这里面的关键是一个和两个星号的区别,而不是args和kwargs在名字上的区别,实际上你可以使用*any或**whatever的方式. ...

  5. 【Azure 应用服务】App Service频繁出现 Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener 异常分析

    问题描述 在使用App Service的过程中,发现应用频繁出现503错误,通过Kudu站点获取到Logfiles. 在 Eventlog.xml 文件中,发现大量的 Microsoft.Window ...

  6. 文件管理工具“三剑客” #Everything #SpaceSniffer #Clover

    前言: 本文收集了我日常使用的三个文件管理工具: 文件搜索神器--Everything 磁盘文件占用分析工具--SpaceSniffer 文件资源管理器--Clover 下面我从工具解决的痛点和使用技 ...

  7. 服务器之Apollo单机部署(快速安装)

    部署Apollo apollo单机部署(快速安装) Apollo官网:https://www.apolloconfig.com/#/zh/deployment/quick-start-docker 官 ...

  8. 10.-ORM-基础字段及选项

    一.ORM-基础字段及选项 任何关于表结构的修改,务必在对应模型类上修改 例如 给 books_book表添加一个info字段 varchar(100) 1.在模型中添加对应的类属性 2.执行数据库迁 ...

  9. SQL--临时表的使用

    临时表的创建 临时表分为:本地临时表和全局临时表 通俗区分: 本地临时表:只能在当前查询页面使用,新开的查询是不能使用它的     #temp 全局临时表:不管开多少查询页面都可以使用  ##temp ...

  10. Linux---配置新服务器的常见操作(CentOS7)

    修改 Centos7为字符界面 Centos7取消了之前的 inittab文件的作用,改用命令实现, systemctl get-default : 获得默认启动方式 systemctl set-de ...