空压机动态配载
使用手册
[TOC]
简介
空压机组作为工厂的重要组成部分,主要目的是给工厂供给压缩气体,包括空气、氮气等等,也是工厂中耗电比较大的耗能单位。为了减少空压机组不必要的耗电,智物联独立开发了空压机组动态配载系统,英文名为Dynaload,在宏观角度对空压机组的运行状态进行调频,达到节能减排的效果。同时,还可以解决多变频机组同起同停等问题。
适用范围
使用于边缘计算场景,同时支持变频、工频空压机等复杂工况,支持有气罐和无气罐两种场景。
主要功能
根据实际工况匹配空压机组的气体供需关系,调节空压机组运行状态,解决节能的主要问题和其他一些空压机组运行时的痛点。
基本概念
针对不同的空压机组场景,Dynaload开发了不同的软件版本。如果空压机组中的气罐的数据无法采集,则使用Dynaload中的精简版,如果空压机组中的气罐数据可以采集,则使用Dynaload中的完整版。
空压机组的气罐可以储存一定量的气体,可以充当空压机组的缓冲组件,对于气体波动较大的情况,可以减少空压机的状态改变,所以也是气站中的重点计算部分。使用完整版Dynaload计算可以更好的掌握气站的用气情况,从而精准调控空压机。
在Dynaload算法计算过程中,管道简图也是必要的。使用管道图,可以更好的计算各管道压力,调控各个空压机状态,减少由于管道压力差导致的产气损耗。
类比电路图的并联、串联,管道图也可以描述成类似的样子,所以叫管道简图,举个例子:
- 案例一

- 案例二

- 案例三

需要注意是,管道简图里面表达的设备,都是能采集到数据的设备,如果某个设备没有接到数据,或者没有接到设备的必要数据,那么就无法参与计算,无需参与管道简图的表达。
将管道图转化为管道简图并不是我们的最终目标,我们的目的是将管道图为计算所用,使得计算更贴近实际工况。所以我们要把管道简图转化为脚本的形式,在配置项目的时候当做参数传进去,由此我们将管道简图使用Json的表达方式,填写设备布局图。
类比电路图中的并联串联,我们也依法仿照表达管道图,把空压机组的各设备连接方式分为串联和并联,分别表示为json的数组和json的对象。举例如下:
串联:

表达为Json格式是:
["L1","L2"]
并联:

表达为Json格式是:
{"L1":"","L2":""}
按此方式,管道简图中的案例一的设备布局图表示为:
{
"L1F1": {
"L3": ["T1", "C1"],
"L4": ["T2", "C2"]
},
"L2F2": {
"L5": ["T3", "C3"],
"L6": ["T4", "C4"]
}
}
案例二的设备布局图表示为:
{
"L1F1": {
"L2": "C1",
"L3": "C2",
"L5": "C4",
"L4": "C3"
}
}
案例三的设备布局图表达式为:
{
"L1F1": {
"L3": ["T1", "C1"],
"L4": ["T2", "C2"]
},
"L2F2": {
"L5": ["T3", "C3"]
},
"L3F3": {
"L6": ["T4", "C4"]
}
}
界面说明(非最终版)
指数分析计算一共有5个界面,接下来我们分别展示:
首页总览

首页可以对整个指数分析有全局的了解,可以从首页获取到以下信息:
- 属性及项目信息:获取属性数量、项目总数、运行项目个数以及停止项目个数。
- 系统介绍:简单介绍指数分析
- 使用文档:介绍如何使用指数分析系统
- 应用公告:此处可以查看有关本指数分析计算的公告
属性管理
此处可管理属性,进行对属性的增删改查环节
项目管理

项目管理界面,可以在这个界面进行增删改查的管理,同时还可以管理项目的启停。可以点击添加按钮添加项目,也可以点击某一个项目名称,编辑这个项目的详细问题。

具体怎么配置、修改一个项目,将在下文详细介绍,这里不再赘述。
数据结果

在本页面可以查看各个分析项目的结果。
显示仪表
本界面可以查看放置在本指数分析计算的显示板数据。
配置方法
首页总览

首页可以看到指数分析的属性数量、创建项目总数、当前运行项目数量和当前停止项目数量。
添加项目

项目名称:项目名称要求不能重复,其具体名称可以从实际需要和便利性出发,填写项目名称
class名称:根据需要选择class名称,目前有以下class:
class中文名 | Class英文名 | 具体功能 |
---|---|---|
完整版 | Advanced | 包含气罐参数 |
精简版 | Minimalism | 不包含气罐参数 |
- 目标压力:单位是Mpa,是本控制机组的最低目标压力。
- 是否控制:填写是否进行反向控制,如果不进行反向控制,依然会进行计算,即为设备运行推荐值。
- 空压机台数:填写实际空压机台数,暂定大于1小于10。
- 流量计个数:填写实际流量计个数,暂定大于1小于10。
- 气罐个数:本参数在完整版的计算才有,精简版计算无需气罐个数。
- 设备布局图:填写上文介绍的设备布局图内容。
- 对象ID:选择要进行控制的对象组(对象)
- 使用过滤:当采集数据发生异常的时候,会导致计算出现错误,引发优化失效,此时使用过滤算法,将采集的异常数据过滤掉,提高优化准确程度。
- 分析计算周期:可选项有:
分钟
、小时
、其他
等等,其他
的含义为秒,可以根据需要自行填写,填写范围是从0-999。
脚本规范
二维Json数组
首先,脚本必须为Json格式,否则无法创建项目。可使用各种json验证工具校验是否为正确的Json。
填写要求
每个参与计算的设备(包括传感器)的参数有:
设备 | 必填参数 | ||||||
---|---|---|---|---|---|---|---|
空压机 | type(工频/变频) | T1(温度) | P1(压力) | E1(电量) | Hz(频率) | L1(运行状态) | t1(运行时间) |
气罐 | T1(温度) | P1(压力) | V1(容量) | ||||
流量 | T1(温度) | P1(压力) | Q1(流量) |
根据设备布局图,可以确定每个设备属于哪个管道,按照上文案例二举个例子:
{
"L1F1": {
"L2": "C1",
"L3": "C2",
"L5": "C4",
"L4": "C3"
}
}
例如设备布局图中流量计F1的温度、压力、流量,表示为F1T1,F1P1,F1Q1,并对应上这三个参数的FV。完整来写就是:
{ "F1P1":"S01",
"F1T1":"S02",
"F1Q1":"S03"
}
设备布局图中的空压机C1,必填空压机中的七个参数。对于工频空压机,无需频率参数,填写""。在脚本的表达形式就是:
{
"C1type":"1",
"C1t1":"1#com_LoadingTotalTime",
"C1T1":"1#com_ExhTemp",
"C1Hz":"1#com_MainOutputFrequency",
"C1P1":"1#com_AirSupplyPres",
"C1E1":"1#com_PowerConsumption",
"C1L1":"1#com_RunningStatus"
}
设备布局图中的气罐T1,必填3个参数,气罐容积是基本不会改变的,无需采集,直接填写气罐的容积即可,单位为L(升),则脚本为:
{
"T1P1":"TankPres",
"T1T1":"TankTemp",
"T1V1":"52"
}
按照这种方式,案例二需要填写一个流量计F1,一个气罐T1,四个空压机C1-C4,假设C1、C2为变频空压机,C3、C4为工频空压机,完整的脚本实例如下:
{
"C1type": "1",
"C1t1": "1#com_LoadingTotalTime",
"C1T1": "1#com_ExhTemp",
"C1Hz": "1#com_MainOutputFrequency",
"C1P1": "1#com_AirSupplyPres",
"C1E1": "1#com_PowerConsumption",
"C1L1": "1#com_RunningStatus",
"C2type": "1",
"C2t1": "2#com_LoadingTotalTime",
"C2T1": "2#com_ExhTemp",
"C2Hz": "2#com_MainOutputFrequency",
"C2P1": "2#com_AirSupplyPres",
"C2E1": "2#com_PowerConsumption",
"C2L1": "2#com_RunningStatus",
"C3type": "0",
"C3t1": "3#com_LoadingTotalTime",
"C3T1": "3#com_ExhTemp",
"C3Hz": "",
"C3P1": "3#com_AirSupplyPres",
"C3E1": "3#com_PowerConsumption",
"C3L1": "3#com_RunningStatus",
"C4type": "0",
"C4t1": "4#com_LoadingTotalTime",
"C4T1": "4#com_ExhTemp",
"C4Hz": "",
"C4P1": "4#com_AirSupplyPres",
"C4E1": "4#com_PowerConsumption",
"C4L1": "4#com_RunningStatus",
"F1P1": "com_AirSupplyPres",
"F1T1": "com_ExhTemp",
"F1Q1": "com_AirSupplyPres",
"T1P1": "com_AirSupplyPres",
"T1T1": "com_ExhTemp",
"T1V1": "52"
}