数据上云

Navigation:  功能明细 > 数据转储 >

数据上云

Previous pageReturn to chapter overviewNext page

1.概述

配置更新:

上云配置更新服务通过ICE提供上云配置更新的相关接口,BB调用该接口将配置json传输到上云配置更新服务,对上云配置进行更新。

状态查询:

上云配置更新服务通过ICE提供状态查询的相关接口,BB调用该接口将查询ihd配置状态。

BB接口:详见子目录“Tag点上云接口

 

配置文件说明:

ihd.connection用于配置ihd连接。

HDConfigHandler.Endpoints用于配置服务对外端口,一般只需修改tcp端口即可。

 

# The server creates one single object adapter with the name

# "HDConfigHandler". The following line sets the endpoints for this

# adapter.

#

IdentityName=HDConfigHandler

ihd.connection=admin:admin@10.25.190.34:5673

HDConfigHandler.Endpoints=tcp -p 30000:udp -p 30000:ws -p 10002

#

# Warn about connection exceptions

#

Ice.Warn.Connections=0

Ice.ThreadPool.Server.Size=5

 

接口说明:

module ihd

{

   exception InvokeError

   {

       string reason;

   }

 

   sequence<byte> JsonSeq;

 

   interface HDConfigHandler

   {

       int updateConfig(JsonSeq request, out JsonSeq response) throws InvokeError;

       int deleteConfig(JsonSeq request, out JsonSeq response) throws InvokeError;

       int queryState(JsonSeq request, out JsonSeq response) throws InvokeError;

       int queryServiceState(out JsonSeq response) throws InvokeError;

   }

}

使用EiInfo类组织上云配置二进制数据,在调用ConfigUpdate接口前:

调用SerializeEIClassToJSonV2接口将EiInfo转换为json字符串,该json字符串二进制数据作为ConfigUpdate接口的传入参数。

调用EiInfo类提供的Serialize接口将EiInfo对象序列化,作为传入参数传入ConfigUpdate。

成功返回0,失败返回错误码。

 

上云配置新增 / 更新:

参数列表

名称

类型

是否可空

备注

 

request

object

 

 

type

int

0为增量导入,1为全量导入

 

sumNum

int

导入点数个数(单次导入点位上限为999)

 

tags

array

导入点数信息列表,详见下表

返回值列表

 

 

response

object

 

 

updatedTags

int

导入tag个数

 

invalidTags

int

未导入tag个数

 

reasons

array

未导入原因列表

 

+reason

string

未导入原因

 

序号

字段

英文名

是否必填项

定义

示例

1

机组号

UNIT_NUMBER

必填

边缘节点所在机组号,由运营中心牵头统一整理并提供规范,并在平台上提供录入和维护,在平台未上线前,线下获取。

H032

2

边缘字段英文名称

TAG_NAME

必填

ihd数据库中的tag点名

BCU_FLAME-CURRENT_AA_BCM2

3

云上英文字段

TAG_CLOUD_EN_NAME

必填

按照字段规范,以数据元英文名称为基础进行扩展

RADIA_PIPE_IGN_CON_CUR_AA_BCM2

4

云上中文字段

TAG_CLOUD_CH_NAME

选填

按照字段规范,以数据元英文名称为基础进行扩展

BCM2辐射管点火控制器电流

5

引用数据元英文

TAG_REFERENCE_EN_NAME

选填

按照字段规范,以数据元中文名称为基础进行扩展

HF_CHGMCH_ARM_ROUTE_ACT

6

引用数据元中文

TAG_REFERENCE_CH_NAME

选填(根据D列引用大数据中心数典功能,不需要人工填写)

按照字段规范,以数据元中文名称为基础进行扩展

辐射管点火控制器电流

7

引用数据元标识符

TAG_REFERENCE_SOURCE_IDENTIFIER

选填(根据D列引用大数据中心数典功能,不需要人工填写)

必填,数据元标识ID在数据元导出时会一并带上

DEBG000000081721

8

工厂

FACTORY

选填

 

baoshan

9

区域

AREA

选填

 

cold-rolling

10

设备

TAG_EQUIPMENT

选填

设备名称

CHGMCH_ARM

11

同步方式

TAG_SYNC_TYPE

必填

必填,填写0或者1,同步上云方式,0代表注册推送方式,1代表周期发送

1

12

数据采集间隔

TAG_COLLECT_INTERVAL

选填

针对PLC/传感器,表示数据分辨率,单位为ms

1000

13

数据采样间隔(同步周期)

TAG_PERIOD

必填

边缘采样的数据间隔,单位为ms,同步方式为1时该字段有效

1000

14

数据发送频率

TAG_SEND_FREQUENCY

必填

边缘向大数据中心发送采样数据的间隔,单位为ms,数据发送模式为DM时,该字段有效,其余发送模式,该字段无效

20

15

数据发送模式

TAG_SEND_MODE

必填

D:单tag点单值

DM:单tag点多值

DMM:多tag点单值(时间不对齐)

DMA:多tag点单值(时间对齐)

 

同步方式设置为周期式同步方式时该字段有效。同步方式为注册式同步方式时,该字段填写"DMM"。

DMM

16

压缩率

TAG_COMPDEV

选填

默认为0,即不压缩

 

17

整数位

TAG_INTEGER_NUMBER

选填

表示上云数据的总位数(包括整数位数和小数位数)不能超出该值,非零值时该字段才生效,当tagvalue超出设置的整数位数时,会截断后面的数据。

整数位设置为3,有效数位为2,系数设置为1,ihd中tag点tagvalue为83.3421,

最终上云数据为83.3

18

有效数位

TAG_EFFECTIVE_NUMBER

选填

表示小数位位数不能超出该值,为非零值时该字段才生效,当tagvalue小数位超出设置的位数时,会截断后面的数据

整数位设置为5,有效数位为1,系数设置为1,ihd中tag点tagvalue为8343.3421,

最终上云数据为8343.3

19

系数

TAG_COEFFICIENT

选填

用于单位转换,把iHperDB中存储数据转换成符合云上存储的单位,为非零值时该字段有效。上云服务依次进行系数、有效数位、整数位的处理。

整数位设置为5,有效数位为1,系数设置为0.5,ihd中tag点tagvalue为100,

最终上云数据为50

 

上云配置删除:

参数列表

名称

类型

是否可空

备注

 

request

object

 

 

tags

array

待删除tag点名列表

 

+tagName

string

tag点名

返回值列表

 

 

response

object

 

 

deletedTags

int

待删除tag个数

 

invalidTags

int

未删除tag个数

 

reasons

array

未删除原因列表

 

+tagName

string

未删除tag点名

 

+reason

string

未删除原因

 

配置状态查询:

参数列表

名称

类型

是否可空

备注

 

request

object

 

 

startTime

string

查询开始时间,形如:2023-07-04T00:00:00

 

sendMode

string

tag点发送方式,如"DM",不填时返回所有

返回值列表

 

 

response

object

 

 

syncedTags

int

上云发送点数

 

configedTags

int

上云配置点数

 

bugTags

array

问题点位列表

 

+tagName

string

问题tag点名

 

+cloudEnName

string

问题tag点云上英文名

 

 +lastSyncTime

string

Unix时间(ms),如1689736706000

 

上云服务状态查询:

返回值列表

名称

类型

是否可空

备注

 

response

object

 

 

result

int

服务状态,0表示正在运行,1表示正在启动,2表示已停止

 

startTime

string

服务启动时间,形如:2023-07-04T00:00:00

 

stopTime

string

服务停止时间,形如:2023-07-04T00:00:00

 

reason

string

服务停止原因

 

json示例:

配置更新:

输入示例:

{

    "type": 0,

    "sumNum": 2,

    "tags": [

        {

            "UNIT_NUMBER": "0",

            "TAG_NAME": "TagName0",

            "TAG_CLOUD_EN_NAME": "tag0",

            "TAG_CLOUD_CH_NAME": "标签0",

            "TAG_REFERENCE_EN_NAME": "tag0",

            "TAG_REFERENCE_CH_NAME": "refTag0",

            "TAG_REFERENCE_SOURCE_IDENTIFIER": "",

            "FACTORY": "factory",

            "AREA": "area",

            "TAG_EQUIPMENT": "Tag",

            "TAG_SYNC_TYPE": 0,

            "TAG_COLLECT_INTERVAL": 1,

            "TAG_PERIOD": 1,

            "TAG_SEND_FREQUENCY": 1,

            "TAG_SEND_MODE": "D",

            "TAG_COMPDEV": 0,

            "TAG_INTEGER_NUMBER": 0,

            "TAG_EFFECTIVE_NUMBER": 0,

            "TAG_COEFFICIENT": 0

        },

        {

            "UNIT_NUMBER": "1",

            "TAG_NAME": "TagName1",

            "TAG_CLOUD_EN_NAME": "tag1",

            "TAG_CLOUD_CH_NAME": "标签1",

            "TAG_REFERENCE_EN_NAME": "tag1",

            "TAG_REFERENCE_CH_NAME": "refTag1",

            "TAG_REFERENCE_SOURCE_IDENTIFIER": "",

            "FACTORY": "factory",

            "AREA": "area",

            "TAG_EQUIPMENT": "Tag",

            "TAG_SYNC_TYPE": 0,

            "TAG_COLLECT_INTERVAL": 1,

            "TAG_PERIOD": 1,

            "TAG_SEND_FREQUENCY": 1,

            "TAG_SEND_MODE": "D",

            "TAG_COMPDEV": 0,

            "TAG_INTEGER_NUMBER": 0,

            "TAG_EFFECTIVE_NUMBER": 0,

            "TAG_COEFFICIENT": 0

        }

    ]

}

 

输出示例:

{

    "updatedTags": 2,

    "invalidTags": 2,

    "reasons": [

        {

            "tagName": "TagName0",

            "reason": "Invalid json field: TAG_SEND_MODE"

        },

        {

            "tagName": "TagName1",

            "reason": "Invalid json field: TAG_SEND_MODE"

        }

    ]

}

 

配置删除:

输入示例:

{

    "tags": [

        {

            "tagName": "TagName0"

        },

        {

            "tagName": "TagName1"

        }

    ]

}

 

输出示例:

{

    "deletedTags": 2,

    "invalidTags": 2,

    "reasons": [

        {

            "tagName": "TagName0",

            "reason": "No such tag."

        },

        {

            "tagName": "TagName1",

            "reason": "No such tag."

        }

    ]

}

 

状态查询:

输入示例:

{

    "startTime": "2023-07-05T09:00:00",

    "sendMode": "D"

}

 

输出示例:

{

    "syncedTags": 3,

    "configedTags":10,

    "bugTags": [

        {

            "tagName": "TagName0",

            "cloudEnName": "TagName0",

            "lastSyncTime": "1689736706000",

        },

        {

            "tagName": "TagName1",

            "cloudEnName": "TagName1",

            "lastSyncTime": "1689736706000",

        }

    ]

}

 

上云服务状态查询:

输出示例:

{

    "result": 2,

    "startTime":"2023-07-13T09:00:00",

    "stoptime":"2023-07-13T09:00:00",

    "reason": "Disk full."

}