目       录

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. .net程序集强签名

    要想得到强签名的dll有两种情况: 1.给项目添加强命名 在你的项目右键->属性->签名,勾选"为程序集签名",新建 或 浏览已经新建过的.pfx文件,然后重新buil ...

  2. PHP获取当前周一、周末时间等(持续更新)

    获取周一和周日的日期 $week = date('w') == 0 ? 7 : date('w'); $Sunday = strtotime('today -' . ($week - 1) . 'da ...

  3. mpdf导出pdf,中文符号乱码

    改源码: 打开vendor/mpdf/mpdf/src/Config/FontVariables.php 在最后一行加入: "gb" => [ 'R' => 'gb.t ...

  4. vscode用户自定义代码中如何表示table空格

    "Print to phpfuntion": { "scope": "php", "prefix": "pfu ...

  5. 【项目实战】kaggle产品分类挑战

    多分类特征的学习 这里还是b站刘二大人的视频课代码,视频链接:https://www.bilibili.com/video/BV1Y7411d7Ys?p=9 相关注释已经标明了(就当是笔记),因此在这 ...

  6. 胎压监测系统(DWS)

    胎压监测系统(DWS)通过监测和比较行驶时各车轮和轮胎的滚动半径和旋转特性,以确定是否一个或多个轮胎明显充气不足,而非直接测量各轮胎的压力. 系统监测到异常时指示灯将点亮,且仪表上出现信息. 必须校准 ...

  7. ES重要配置解析

    path.data和path.logs 如果您使用.zip或.tar.gz存档,则data和logs 目录是子文件夹$ES_HOME.如果这些重要文件夹保留在其默认位置,则在将Elasticsearc ...

  8. Css3中自适应布局单位vh、vw

    视口单位(Viewport units) 什么是视口? 在桌面端,视口指的是在桌面端,指的是浏览器的可视区域:而在移动端,它涉及3个视口:Layout Viewport(布局视口),Visual Vi ...

  9. Optional 常用方法总结

    转载请注明出处: Optional 类是 JAVA 8 提供的判断程序是否为空提供的包装工具类:可以减少代码中的 是否为空的判断,以及减少 NullPointerExceptions:使得程序变得更为 ...

  10. nsis利用ButtonEvent插件移动无标题窗口

    众所周知,普通win窗口是带有标题栏的,标题栏的主要功用之一,就是可以方便的拖动窗体,但为了各式各样的目的,有时候我们不得不想办法将其消除,在nsis中主要是靠system插件调用系统函数改变窗体风格 ...