版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用户端能源管理系统第4部分:主站与网关信息交互规范2022-10-12发布国家标准化管理委员会GB/T35031.4—2022前言 I Ⅱ 2规范性引用文件 3术语和定义、缩略语 13.1术语和定义 3.2缩略语 24约定 34.1产品与设备约定 34.2协议和报文语言约定 34.3MQTT约定 34.4断网续传的约定 44.5设备连接鉴权接口约定 44.6设备侧通用返回码约定 55CEMS主题说明 55.1主题名和主题参数 55.2CEMS主题分类 5.3事件相关主题和属性相关主题基本参数 5.4主题示例 5.5主题名解析 5.6主题参数解析 5.7CEMS主题列表 6CEMS主题规范 6.1设备命令 6.2设备消息 6.3通信端口 6.4监控点 6.5表计读数 6.6设备属性 6.7软固件升级 6.8文件上传/下载 6.9设备时间 6.10设备信息 6.11设备日志 6.12设备告警 6.13断网续传 参考文献 I本文件按照GB/T1.1—2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定起草。本文件为GB/T35031《用户端能源管理系统》的第4部分。GB/T35031已经发布以下部分:——第1部分:导则;——第2部分:主站功能规范;——第3-1部分:子系统接口网关一般要求;——第3-2部分:子系统接口网关数据配置;——第4部分:主站与网关信息交互规范;——第6部分:管理指标体系;——第7部分:功能分类和系统分级;——第8部分:用例。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。本文件由中国电器工业协会提出。本文件由全国电器设备网络通信接口标准化技术委员会(SAC/TC411)归口。本文件起草单位:上海电器科学研究院、许继电气股份有限公司、珠海派诺科技股份有限公司、南京大全电气研究院有限公司、北京华电众信技术股份有限公司、烟台东方威思顿电气有限公司、上海蔚来汽车有限公司、上海交通大学、上海交通大学宁波人工智能研究院、山东和信电力科技有限公司、上海电力大学、上海罗湖斯自动化技术有限公司、上海尤比酷电气有限公司、苏州万龙电气集团股份有限公司。ⅡGB/T35031《用户端能源管理系统》是指导用户端能源管理规范化的推荐性标准,旨在通过统一的技术要求、数据接口模型和评价评估体系,解决长期以来困扰我国用户端能源管理领域不同厂商、不同用户、不同系统之间兼容性困难的问题。鉴于用户端能源管理系统涉及系统和元件、硬件和软件、通信协议、数据接口、监测评估等多个维度,其内容可以明确划分为若干个相对独立但又互有关联的部分,故GB/T35031拟由八个部分构成。——第1部分:导则。提供用户端能源管理系统架构模型和总体要求。——第2部分:主站功能规范。包含用户端能源管理系统主站软件功能架构、功能定义和要求。——第3-1部分:子系统接口网关一般要求。包含子系统接口网关功能模型、功能要求以及电气、机械、检验等方面的一般要求。——第3-2部分:子系统接口网关数据配置。定义子系统接口网关的数据模型以及应配置的数据。——第4部分:主站与网关信息交规范。定义子系统接口网关通过MQTT协议与主站进行信息交互的各类主题。 第5部分:应用侧接口规范。定义面向应用侧的各类应用程序编程接口,——第6部分:指标体系。提供用户端能源管理系统技术指标体系和各指标项定义。——第7部分:功能分类和系统分级。提供用户端能源管理系统功能分类和系统分级方法。——第8部分:用例。梳理并归纳用户端能源服务形式,以用例方式详细描绘各类用户端能源管理和服务的参与者、交互的信息以及具体流程。本文件的主要目的是定义子系统接口网关通过MQTT协议与主站进行信息交互的各类主题。主站与网关之间的信息交互协议运行在TCP/IP之上,并将MQTT作为应用层协议。MQTT目前有3.1、3.1.1和5.0三个版本,本文件规定使用MQTT3.1.1版本。1用户端能源管理系统第4部分:主站与网关信息交互规范1范围本文件规定了以MQTT通信协议为基础在CEMS主站与网关之间实现通信的信息交互方法和信息交互接口。本文件适用于CEMS主站与子系统接口网关之间的信息交互。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/Z32500—2016智能电网用户端系统数据接口一般要求GB/T35031.1—2018用户端能源管理系统第1部分:导则GB/T35031.2—2018用户端能源管理系统第2部分:主站功能规范GB/Z35031.8—2021用户端能源管理系统第8部分:用例GB/T35031.301—2019用户端能源管理系统第3-1部分:子系统接口网关一般要求GB/T35031.302—2022用户端能源管理系统第3-2部分:子系统接口网关数据配置MQTT-3.1.1-CN:2014消息队列遥测传输协议3.1术语和定义GB/T35031.1—2018、GB/T35031.2—2018、GB/T35031.301-2019、GB/Z35031.8—2021、GB/Z32500—2016界定的以及下列术语和定义适用于本文件。具有相同能力或特征的设备的集合。注1:本文件中产品仅指GB/T35031.302—2022定义的网关产品。注2:产品与设备之间关系,产品犹如一个产品系列,而设备就如该系列下某个型号的设备。具有特定功能的实体,是产品的实例。用来描述设备能力的JSON格式文件。该文件在主站构建起一款设备的抽象模型,使主站理解该款设备支持的属性信息。注1:定义产品模型就是定义设备的基本属性、上报数据和下发命令的消息格式。2注2:本文件所涉及的产品模型系指由GB/T35031.302—2022定义的产品模型。主题topic消息发布/订阅(publish/subscribe)的传输中介,采用UTF-8编码格式。消息发布/订阅通过主题实现传输。附加在应用消息上的一个标签,服务端已知且与订阅匹配,是服务端发送应用消息给每一个匹配的客户端订阅的一个副本。使用MQTT的程序或设备。客户端总是通过网络连接到服务端。它可以发布应用消息给其他相关的客户端,订阅以请求接受相关的应用消息,取消订阅以移除接受应用消息的请求,从服务端断开一个程序或设备,作为发送消息的客户端和请求订阅的客户端之间的中介。服务端接受来自客户端的网络连接,接受客户端发布的应用消息,处理客户端的订阅和取消订阅请求,转发应用消息给符合条件的客户端订阅。一个包括软件和硬件的计算机网络系统,是用户端能源管理系统的管理中心,管理系统的数据传输、数据处理、数据应用以及系统的运行和安全,管理与子系统以及外部第三方系用户端参与能耗数据采集的计量点。下列缩略语适用于本文件。API:应用程序编程接口(applicationprogramminginterface)CEMS:用户端能源管理系统(customerenergymanagementsystem)JSON:Javascript对象标记语言(javascriptobjectnotation)IP:互联网协议(internetprotocol)MQTT:消息队列遥测传输(messagequeuingtelemetrytransport)OSS:对象存储服务(objectstorageservice)OTA:空间下载技术(overtheair)3QoS:服务质量(qualityofservice)TCP:传输控制协议(transmissioncontrolprotocol)4.1产品与设备约定本文件关于产品与设备的关系约定如下。a)产品是具有相同能力或特征的一类设备的集合。本文件中产品指网关,用{productid}或GB/T35031.302—2022定义了网关的产品模型,适用于本文件的设备应符合该产品模型。b)设备接入前需在主站创建产品。创建产品可调用应用侧“创建产品”API接口来实现。创建产品接口在CEMS应用侧接口规范中规定。若主站系统具有创建产品功能的控制台,则创建产品也可在主站控制台实现。c)设备注册在主站创建产品后方可进行。设备注册可调用应用侧“创建设备”API接口来实现,该接口在CEMS应用侧接口规范中规定。若主站系统具有“设备注册”功能的控制台,则设备注册也可在主站控制台实现。设备注册完毕后,方可订阅和发布各类MQTT主题,实现消息/属性上报、接收命令/属性/消息、OTA升级等功能。4.2协议和报文语言约定本文件规定设备使用MQTT协议接入主站,主站和网关之间通过主题进行通信。MQTT是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上。本文件规定MQTT报文均以JSON格式表述。JSON是一种轻量级的数据交换格式,便于人阅读和编写,同时也便于机器解析和生成。JSON采用完全独立于语言的文本格式,其语法是JavaScript对号“[]”保存数组。JSON值可以是数字(整数或浮点数)、字符串(在半角双引号"…"中)、逻辑值(true或false)、数组(在方括号中)、对象(在花括号中)和空(null)。主站与网关之间的信息交互协议运行在TCP/IP之上,并将MQTT作为应用层协议。MQTT目前有3.1、3.1.1和5.0三个版本,本文件规定使用MQTT3.1.1版本。MQTT消息由固定报头(Fixedheader)、可变报头(Variableheader)和有效载荷(Payload)三部分组成。其中固定报头和可变报头格式的填写遵循MQTT标准规范,有效载荷的格式,即网关和CEMS主站之间交互信息的格式,由本文件定义。常见MQTT消息类型主要有CONNECT、SUBSCRIBE、PUBLISH。a)CONNECT:指客户端请求和服务端连接,是有效载荷(Payload)的主要参数。b)SUBSCRIBE:指客户端订阅请求。有效载荷中的主要参数“主题名”,参考表6中订阅者为网关的请求主题。c)PUBLISH:指主站发布消息请求。1)可变报头中的主要参数“主题名”,指网关上报到CEMS主站时发布者为设备的请求主题。详细请参考表6。2)有效载荷中的主要参数为完整的数据上报和命令下发的消息内容,是一个JSON对象。MQTT协议定义三种消息传递的QoS,表明此主题范围内的消息传送到客户端所需的一致程度。a)至多一次(值0),消息发布完全依赖底层TCP/IP网络,可能会发生消息丢失或重复。4b)至少一次(值1),确保消息到达,但可能会发生消息重复。c)只有一次(值2),确保消息到达一次。这一服务质量水平适用于诸如计费等消息重复或丢失会导致不正确结果的系统中。为了保证客户端的消息能够发送到服务端,本文件规定客户端PUBLISH时的QoS设置为1,以保证客户端通过PUBLISH发送的每条消息服务端至少能收到一次。4.4断网续传的约定网关可通过MQTT心跳机制侦听网关是否在线。网关离线时主站停止向网关发送信息。网关再连线时,通过网关断网续传主题向主站上传全量数据。主站收到网关上传的全量数据后,先更新现有数据并保存,然后再向网关发送消息。4.5设备连接鉴权接口约定本文件建议CEMS主站的设备侧能支持MQTT协议的CONNECT消息接口,鉴权通过后建立设备与主站间的MQTT连接。设备连接鉴权接口字段说明如表1。表1设备连接鉴权接口字段说明参数可选性类型参数描述必选一机一密的设备ClientID由4部分组成:设备ID、设备身份标识类型、密码签名类型、时间戳,通过下划线“_”分隔。●设备ID:设备在主站成功注册后生成的唯一设备标识,通常由设备的产品ID和设备的NodeID通过分隔符“_”拼装而来。●设备身份标识类型:固定值为0,表示设备ID。●密码签名类型:长度1字节,当前支持2种类型:“0”代表HMACSHA256不校验时间戳;“1”代表HMACSHA256校验时间戳。●时间戳:设备连接主站时的UTC时间,格式与GB/T35031.302—2022的UTC格式一致,为yyyyMMdd'T'HHmmss'Z',如时间2018/7/2417:56:20应表示为20180724T175620ZUsername必选设备IDPassword必选加密后的设备密钥。Password的值为使用“HMACSHA256”算法以时间戳为密钥,对secret进行加密后的值。secret为注册设备时主站返回的secret设备通过MQTT协议的CONNECT消息进行鉴权,对于构造ClientID的各个部分信息都应包括进去,主站收到CONNECT消息时,会判断设备的鉴权类型和密码摘要算法。a)当采用“采用摘要算法。备的鉴权校验时间戳方式时,会先校验消息时间戳与主站时间是否一致,再判断密码是否正确。b)当采用“HMACSHA256”不校验时间戳方式时,鉴权消息也应带时间戳,但不检验时间是否准确,仅判断密码是否正确。CONNECT消息鉴权失败时,主站会返回错误,并自动断开MQTT链路。MQTT协议设备和主站建链时,常见返回码如表2。5表2MQTT协议接入建链返回码返回码返回码描述原因连接成功连接成功请求拒绝,协议版本错误服务器不支持客户端请求MQTT协议版本请求拒绝,无效的客户端标识符ClientID不符合格式要求或者心跳时间间隔不满足主站要求请求拒绝,服务器不可用主站服务不可用请求拒绝,用户名或密码错误用户名或密码错误请求拒绝,没有授权客户端没有权限连接4.6设备侧通用返回码约定表3列出了设备侧通用返回码(responseCode),用于表达主站下行推送时设备侧业务处理的返回结果。表3设备侧通用返回码返回码返回信息描述请求成功requesterron内部服务错误,处理时发生内部错误requestparametererror请求参数错误,设备入参校验失败toomanyrequests请求过于频繁,设备侧处理不过来时可以使用从100000到110000的错误码用于设备自定义错误信息,和主站错误信息加以区分5CEMS主题说明5.1主题名和主题参数5.1.1主题名元素由主题名包含的元素可以确定主题属于命令、属性、事件还是消息,上行还是下行,请求还是响应。主题名示例:主站下发命令主题名:$cems/down/{productid}/{deviceid}/{servicetype}设备接令响应主题名:$cems/down/{productid}/{deviceid}/{servicetype}/response主站查询属性主题名:$cems/down/{productid}/{deviceid}/{servicetype}/get网关上报属性主题名:$cems/up/{productid}/{deviceid}/{servicetype}/report表4给出了主题名中各元素的说明。6表4主题名各元素说明序号参数参数含义说明1CEMS主题的标识表示该主题适用于用户端能源管理系统2主题方向主题方向:无论在请求主题中还是在响应主题中,down均表示由主站到网关的下行主题,up均表示由网关到主站的上行主题3产品类别标识符本文件的网关产品标识符为“cemsgateway”。用户端能源管理系统有各种各样的产品,如断路器、充电桩等,它们都有相应的productid和deviceid4设备ID网关的设备标识符,将由实际的网关设备标识符(如gw0001)替代5设备服务类别本文件的设备服务类别有commands(命令)、properties(属性)和events(事件)三类。另有messages(消息)用于网关无法按照属性格式进行数据上报时将网关的自定义数据上报给主站,主站将网关上报的消息转发至应用服务器进行存储和处理6查询主站查询网关属性数据7上报网关根据要求主动上报属性数据8响应主题主题名中有response元素表示该主题为响应主题,没有该元素的主题则为请求主题5.1.2主题通用参数一个主题除了主题名之外还有各种参数,不同主题其参数不尽相同,第6章将具体定义这些参数。表5给出了本文件主题中一些通用参数的说明,以简化后面主题规范中参数定义说明。表5主题通用参数说明序号参数参数含义说明1requestID请求ID消息在当前设备中的唯一标识,出现于请求主题和响应主题。对应的请求主题和响应主题使用同一个requestID2responseRequired响应设定用于设定是否要求返回响应数据。1—要求返回响应数据;0—不要求返回响应数据。默认值为13设备ID用于唯一标识一个设备。设备ID在注册设备时直接指定,或者由主站分配获得。可选,缺省时由主题名中deviceID替代4服务ID设备具体服务功能的标识,出现在请求主题中,也可能出现在响应主题中。详见表75事件类型指向一个软件程序名,事件发生时触发并运行该软件程序。事件类型仅出现在事件相关的主题中。详见表76事件时间事件发生的时间。UTC字符串格式“yyyyMMdd'T'HHmmss'Z'”,如:2021年7月6日17点30分8秒表示为“20210706T173008Z”7responseCode返回码设备侧通用返回码,请求参数中的responseRequired设定值为1(要求返回响应参数)时出现在响应主题中。详见表38responseMessage返回信息返回码对应的信息,可能伴随responseCode出现在响应主题。详见表37网关使用MQTT协议接入CEMS主站,主站和网关通过主题进行通信。CEMS设备侧主题分为四类,即命令相关主题、消息相关主题、事件相关主题和属性相关主题。表6列出了各主题分类对应的用途、请求/响应的主题名。表6CEMS设备侧主题分类主题分类用途请求/响应Publisher(发布者)Subscriber(订阅者)主题名命令相关主题主站下发命令请求主站网关$cems/down/{productid}/{deviceid}/commands响应网关主站$cems/up/{productid}/{deviceid}/commands/re-消息相关主题网关上报消息请求网关主站$cems/up/{productid}/{deviceid}/messages主站下发消息请求主站网关$cems/down/{productid}/{deviceid}/messages事件相关主题网关上报事件请求网关主站$cems/up/{productid}/{deviceid}/events主站下发事件请求主站网关$cems/down/{productid}/{deviceid}/events属性相关主题网关上报属性请求网关主站$cems/up/{productid}/{deviceid}/properties/report主站查询网关请求主站网关$cems/down/{productid}/{deviceid}/properties/get响应网关主站$cems/down/{productid}/{deviceid}/properties/get/response网关获取影子数据请求网关主站$cems/up/{productid}/{deviceid}/shadow响应主站网关$cems/down/{productid}/{deviceid}/shadow/response5.3事件相关主题和属性相关主题基本参数5.3.1事件相关主题基本参数事件相关主题基本参数数据模型见图1。8事件相关响应Toptb9事件相关请求Toptb7图1事件相关主题基本参数数据模型事件相关请求主题基本参数事件相关请求主题基本参数说明见表7。表7事件相关请求主题基本参数说明序号字段类型可选性说明1必选请求ID号。详见表52可选设定是否要求返回响应数据。详见表53可选设备ID。详见表54List<ServiceEvent>必选事件服务列表。参数定义见表8序号字段类型可选性说明1必选服务ID。详见表52必选事件类型。详见表53可选事件时间。详见表54parasList<Para>必选事件参数,JSON对象,在具体主题中定义事件相关响应主题基本参数事件相关响应主题基本参数说明见表9。表9事件相关响应主题基本参数说明序号字段类型可选性说明1requestID必选请求ID号。详见表52responseCode必选结果状态码。详见表2返回码说明9表9事件相关响应主题基本参数说明(续)序号字段类型可选性说明3responseMessageString可选返回码对应的消息。详见表3返回码说明4servicelDString必选服务ID。详见表55eventTypeString必选事件类型。详见表56eventTimeString可选事件时间。详见表57parasList<Para>必选事件参数,JSON对象,在具体主题中定义5.3.2属性相关主题基本参数属性相关主题基本参数数据模型见图2。属性相关响应Topcb12services:List<ServiceProp+图2属性相关主题基本参数数据模型属性相关请求主题基本参数属性相关请求主题基本参数说明见表10。表10属性相关请求主题基本参数说明序号字段类型可选性说明1requestIDString必选请求ID号。详见表52responseRequiredUInt可选设定是否要求返回响应数据。详见表53deviceIDString可选设备ID。详见表54servicesList<ServiceProperty>必选属性服务列表ServiceProperty参数定义见表11。表11ServiceProperty定义表序号字段类型可选性说明1String必选服务ID。表计读数属性:$MeterReading_Properties;监控点属性:$MonitorPoint_Properties;设备属性:$Device_Properties;表计读数历史属性:$MeterReading_History_Properties;监控点历史属性:$MonitorPoint_History_Properties;设备历史属性:$Device_Histry_Properties2String可选起始时间。UTC时间格式。查询实时属性时为空3String可选结束时间。UTC时间格式。查询实时属性时为空4eventTimeString必选数据上报UTC时间5propertiesObject<Property>必选查询的属性参数。有三种情况:MeterReadingProperty:表计读数属性,查询单个表计读数属性数据(见6.6.4);MonitorPointProperty:监控点属性,查询单个监控点属性数据(见6.6.5);DeviceProperty:设备属性,查询网关全部属性数据(见6.6.6)属性相关响应主题基本参数属性相关响应主题基本参数说明见表12。表12属性相关响应主题基本参数序号字段类型可选性说明1responseCodeUInt必选结果状态码。详见表2返回码说明2responseMessage可选返回码对应的消息。详见表3返回码说明3List<ServiceProperty>必选属性服务列表4必选5.4主题示例示例1和示例2用来说明CEMS主站如何与网关通过主题交互、主题名和主题参数的解析以及根据主题参数执行操作的过程来实现信息交互和数据采集控制的。为了简洁,示例只给出了请求主题,省略了响应主题。示例1:主站通知网关新增表计读数Topic::$cems/down/cemsgateway/gw000l/events数据格式:{"requestID":"12345","responseRequired":1,"devicelD":"GW0001","services":[{"servicelD":"$MeterReading_Management","eventType":"METERREADING_ADD_NOTIFY","eventTime":"20210510T121212Z","paras":[{"monitorPointID":"MT0001","description":"9号楼总表","meterReadings":[{"readingTypelD":"..0.3.72","aliasName":"60min递增间隔数据前向有功电能(kW·h)"}示例2:网关表计读数属性数据上报Topic:$cems/up/cemsgateway/gw0001/properties/report数据格式:"requestID":"12345","deviceID":"GW0001","servicelID":"$MeterReading_Properties","monitorPointID":"MT0001","readingTypelD":"..0.3.72","aliasName":"小时间隔数据前向有功电能(kW·h)","time":"20210512T120000Z","eventTime":"20210512T121215"}5.5主题名解析网关从主站接收并解析主题,根据主题的服务要求执行对监控点的操作。从主题名称,主站不仅可以知道数据来自哪个网关(deviceID)外,还可以解析出主题服务的类型(serviceType),是命令(command)、属性(property)还是事件(event);解析出是主站下发网关信息还是网关上传主站的信息。从示例1的主题名可以解析出主站向网关(GW0001)下发(down)了一条事件指令(events)。从示例2的主题名可以解析出网关(GW0001)将属性数据(properties)上报(up和report)到主站。5.6主题参数解析主站通过主题将针对特定监控点的新增表计读数发送到网关,网关收到主题后解析主题中包含的MeterReading,从MeterReading得到readingTypelD。从示例1的主题参数可以解析出主站要求网关(GW0001)执行表计读数管理服务($MeterReading_Management),调用程序模块(ADD_METERREADING_NOTIFY)新增一个表计读数(meterReading),此表计读数的读数类型ID(readingTypeID)据前向有功电能(kW·h)”。示例2表示网关根据主站要求新增表计读数之后根据读数类型ID(readingTypeID)执行数据采集并将所采集数据上报主站的情况。网关依据GB/T35031.302—2022的附录A中ReadingType的定义解析readingTypeID参数值,为每间隔60min对电能的增量数据采集一次。网关根据readingTypeID的要求每间隔60min采集一次数据,并将所采集数据(value)、数据采集时间(time)随同devicelD、servicelD、meterReadingID、readingTypeID一起上报给主站。表13所列是本文件定义的CEMS设备侧主题列表。表13CEMS设备侧主题列表云代号分类接口名称主题名服务ID服务类型章节命令主站下发命令$cems/down/{productid}/{deviceid}/commands主站下发命令之响应消息网关上报消息$cems/up/{productid}/{deviceid}/messages主站下发消息$cems/down/{productid}/{deviceid}/messages事件主站通知网关更新通信端口$cems/down/{productid}/{deviceid}/events$CommPort_ManagementCOMMPORT_UPDATE_NOTIFY主站通知网关新增/删除监控点$cems/down/{productid}/{deviceid}/events$MonitorPoint_Management新增监控点:MONITORPOINT_ADD_NOTIFY删除监控点:MONITORPOINT_DELETE_NOTIFY网关更新监控点状态$cems/up/{productid}/{deviceid}/events$MonitorPoint_ManagementMONITORPOINT_UPDATE_STATUS网关请求新增/删除监控点$cems/up/{productid}/{deviceid}/events$MonitorPoint_Management新增监控点:MONITORPOINT_ADD_REQUEST删除监控点:MONITORPOINT_DELETE_REQUEST网关请求新增/删除监控点之响应$MonitorPoint_Management新增监控点:MONITORPOINT_ADD_RESPONSE删除监控点:ONITORPOINT_DELETE_RESPONSE主站通知网关新增/删除表计读数$cems/down/{productid}/{deviceid}/events$MeterReading_Management新增表计读数;METERREADING_ADD_NOTIFY删除表计读数:METERREADING_DELETE_NOTIFY表13CEMS设备侧主题列表(续)代号分类接口名称主题名服务类型章节事件网关请求新增/删除表计读数$cems/up/{productid}/{deviceid}/events$MeterReading_Management新增表计读数:METERREADING_ADD_REQUEST删除表计读数:METERREADING_DELETERESPONSE网关请求新增/删除表计读数之响应$cems/down/{productid}/{deviceid}/events/response$MeterReading_Management新增表计读数:METERREADING_ADD_RESPONSE删除表计读数:METERREADING_DELETE_RESPONSE属性属性$cems/up/{productid}/{deviceid}/properties/report$MeterReading_Properties网关上报监控点属性$cems/up/{productid}/{deviceid}/properties/report$MonitorPoint_Properties网关上报设备属性$cems/up/{productid}/{deviceid}/properties/report$Device_Properties主站查询表计读数实时/历史属性$cems/down/{productid}/{deviceid}/properties/get实时属性;$MeterReading_Properties历史属性:$MeterReading_History_Proper-主站查询表计读数实时/历史属性之响应$cems/up/{productid}/{deviceid}/properties/get/response实时属性:$MeterReading_Properties历史属性:$MeterReading_History_Proper-表13CEMS设备侧主题列表(续)示代号分类接口名称主题名服务类型章节属性主站查询监控点实时/历史属性$cems/down/{productid}/{deviceid}/properties/get实时属性:历史属性:主站查询监控点实时/历史属性之响应实时属性:历史属性:主站查询设备实时/历史属性$cems/down/{productid}/{deviceid}/properties/get实时属性:历史属性:$Device_History_Pro主站查询设备实时/历史属性之响应实时属性:历史属性:$Device_History_Pro网关请求获取主站上设备影子数据$cems/up/{productid}/{deviceid}/shadow/get表计读数影子:监控点影子:MonitorPoint_Shadow设备影子:网关请求获取主站上设备影子数据之响应$cems/down/{productid}/{deviceid}/shadow/get/re表计读数影子;监控点影子:MonitorPoint_Shadow设备影子:表13CEMS设备侧主题列表(续)代号分类接口名称主题名服务ID服务类型章节事件主站下发获取版本信息通知$cems/down/{productid}/{deviceid}/eventsVERSION_QUERY主站下发获取版本信息通知之响应VERSIONREPORT主站下发升级通知$cems/down/{productid}/{deviceid}/events固件升级:FIRMWARE_UPGRADE软件升级:SOFTWARE_UPGRADE主站下发升级通知之响应UPGRADE_PROGRESS_REPORT网关请求获取文件上$cems/up/{productid}/{deviceid}/events$File_ManagementGET_UPLOAD_URL网关请求获取文件上传URL之响应$File_ManagementGET_UPLOAD_URL_RESPONSE结果$cems/up/{productid}/{deviceid}/events$File_ManagementUPLOAD_RESULT_REPORT网关请求获取文件下载URL之响应$cems/up/{productid}/{deviceid}/events$File_ManagementGET_DOWNLOAD_URI网关请求获取文件下载URL之响应$File_ManagementUPLOAD_RESULT_REPORT结果$cems/up/{productid}/{deviceid}/events$File_ManagementDOWNLOAD_RESULT_REPORT网关请求时间同步$cems/up/{productid}/{deviceid}/events$Time_SyncTIME_SYNC_REQUEST表13CEMS设备侧主题列表(续)代号分类接口名称主题名服务ID服务类型章节事件网关请求时间同步之响应$Time_SyncTIME_SYNC_RESPONSE网关上报设备信息$cems/up/{productid}/{deviceid}/eventsDEVICE_INFO_REPORT通知$cems/down/{productid}/{deviceid}/eventsLOGCONFIG网关上报日志内容$cems/up/{productid}/{deviceid}/eventsLOG_REPORT主站通知网关新增/删除告警项$cems/down/{productid}/{deviceid}/events$Alarm_Management新增:ALARM_ADD_NONIFY;删除:ALARMLDELETE_NONIFY网关请求新增/删除告警项$cems/up/{productid}/{deviceid}/events$Alarm_Management新增:ALARM_ADD_REQUEST;删除:ALARM_DELETE_REQUEST网关请求新增/删除告警项之响应$Alarm_Management新增:ALARM_ADD_RESPONSE;删除:ALARM_DELETE_RESPONSE网关上报告警$cems/up/{productid}/{deviceid}/events8.AlarmingALARMREPORT网关请求断网续传$cems/up/{productid}/{deviceid}/events$Gateway_ReportGATEWAYREPORT6.13,2.3号6CEMS主题规范6.1设备命令设备命令定义了主站下发命令主题。6.1.2主站下发命令用于主站向网关下发网关控制命令。主站下发命令后,需要网关及时将命令的执行结果返回给主站,如果网关在一定时间内没回响应,主站会认为命令执行超时。数据模型(图3)dassdass011主站下发合令请求Topc:Scems/down/produdidY{deviceid}/commandsb14+requestID:String+responseRequired:UInt[0..1]+devicelD:String[O..1]+servicelD:String[0.1]+commandName:String[O.1]+paras:Object<CommandPara>[0..1]响应Topic:Scems/up/{produdid}/{deviceid}/commands/responseb16+requestID:StringresponseCode:UIntresponseMessage:String[0..1]paras:Object<CommancResult>[0..1]CommandResultb17+resultCode:String[O..1]+resultMessage:String[0..1]+action:String[0..1]CommandParab15图3主站下发命令数据模型主站下发命令请求主题的主题名、参数说明和示例如下:a)主题名$cems/down/{productid}/{deviceid}/commandsb)参数说明1)主题参数见表14,其中responseRequired值为1。2)CommandPara参数定义见表15。表14主站下发命令请求主题参数说明序号字段类型可选性说明1requestID必选请求ID号。详见表52responseRequired可选设定是否要求返回响应数据。1—要求返回响应数据表14主站下发命令请求主题参数说明(续)序号字段类型可选性说明3可选设备ID,详见表54可选服务ID,为$Device_Command5commandName可选操作”6parasObject<CommandPara>可选设备命令的执行参数。参数定义见表15序号字段类型可选性说明1必选设备命令的执行参数字段。Reset(复位);Paralnit(参数初始化);Datalnit(数据初始化);On-Off(设备开关机);Restart(设备重启);LogsClear(日志清除)2可选动作延时时间,单位为秒。默认为0c)示例示例3:主站下发命令请求Topic:$cems/down/{productid}/{deviceid}/commands数据格式:"requestID":"12345","responseRequired":1,"devicelD":"GW0001","servicelD":"$Device_Command","commandName":"设备控制操作",主站下发命令之响应主题的主题名、参数说明和示例如下:a)主题名$cems/up/{productid}/{deviceid}/commands/responseb)参数说明1)主题参数见表16。2)CommandResult参数定义见表17。表16主站下发命令之响应主题参数说明序号字段类型可选性说明1requestIDString必选请求ID号。详见表52responseCodeUInt必选状态返回码。详见表3通用返回码说明3responseMessageString可选返回码对应的消息。详见表3返回码说明4parasObject<CommandResult>可选设备命令的响应参数,JSON对象。参数定义见表17表17CommandResult定义表序号字段类型可选性说明1可选标识命令的执行结果,0表示成功,其他表示失败。默认为02可选命令执行结果信息。resultCode为“0”时对应的结果信息为“success”3可选设备命令的执行参数字段。Reset(复位);Paralnit(参数初始化);Datalnit(数据初始化);On-Off(设备开关机);Restart(设备重启);LogsClear(日志清除)c)示例示例4:主站下发命令响应Topic:$cems/up/{productid}/{deviceid}/commands/response数据格式:{"requestID":"12345","responseCode":200,"responseMessage":"success","paras":{"resultCode".O,"resultMessage":"success","action":"Reset"6.2设备消息设备消息定义了网关上报消息和主站下发消息两个主题。网关无法按照属性格式进行数据上报时,可调用此接口将网关的自定义数据上报给主站,主站将网关上报的消息转发至应用服务器进行存储和处理。数据模型图(图4)请求Topic:Scems/up/tproductid}/{deviceid}/messagesb18+maxPayloadSize:String图4网关上报消息数据模型网关上报消息请求主题的主题名、参数说明和示例如下:a)主题名$cems/up/{productid}/{deviceid}/messagesb)参数说明1)主题参数见表18,其中responseRequired值为0。2)Message参数定义见GB/T35031.302—2022表3。表18网关上报消息请求主题参数说明序号字段类型可选性说明1requestID必选请求ID号。详见表52responseRequired可选设定是否要求返回响应数据。0—不要求返回响应数据3可选设备ID,详见表54Object<Massage>必选消息参数。详见GB/T35031.302—2022的表3c)示例示例5:网关上报消息请求Topic:$cems/up/{productid}/{deviceid}/messages数据格式:"requestID":"12345","responseRequired":0,"devicelD":"GW0001","messageName":"Hello","contentFormat":"base64,protobuf-v3","messageContent":"aGVsbG8=","maxPayloadSize":"100MB"}网关无法按照设备属性定义的格式进行指令解析时,可使用此接口下发自定义格式的数据给网关。数据模型图(图5)请求Topi:Scemsfdown/lprodudt{deviceid}/messages+responseRequired:Uint[0.1]+devicelD:String[0..1]+paras:Object<Message>+messageNa+type:Enum十contentFormat:Str+messageContent:string十maxPayloadSize:String图5主站下发消息数据模型主站下发消息请求主题的主题名、参数说明和示例如下:a)主题名$cems/down/{productid}/{deviceid}/messagesb)参数说明1)主题参数见表19,其中responseRequired值为0。2)Message参数定义见GB/T35031.302—2022的表3。表19主站下发消息请求主题参数说明序号字段类型可选性说明1requestIDString必选请求ID号。详见表52responseRequiredUInt可选设定是否要求返回响应数据。0—不要求返回响应数据3devicelDString可选设备ID,详见表54parasObject<Massage>必选消息参数。详见GB/T35031.302—2022的表3c)示例示例6:主站下发消息Topic:$cems/down/{productid}/{deviceid}/messages数据格式:"requestID":"12345","responseRequired":0,"deviceID":"GW0001","messageName":"Hello","contentFormat":"base64,protobuf-v3",'messageContent":"aGVsbG8=",'maxPayloadSize":"100MB"6.3通信端口通信端口定义了主站通知网关更新通信端口主题。6.3.2主站通知网关更新通信端口主站通知网关更新通信端口信息。数据模型图(图6)请求Topt:Scems/down/{productid}/{devicei+commPortID:String+requestID:String+responseRequired:UInt[0..1]+devicelD:String[0..1]services:List<ServiceEvent>ParaFormatm17cems302;:CommPortPara:ParaFormatm17+default:String[0..1]+commPortType:String+shared:Bool十enabled:Bool+paras:List<CommPortPara>+servicelD:String+eventType:String+eventTime:String[0..1]+paras:List<CommPort>图6主站通知网关更新通信端口数据模型主站通知网关更新通信端口请求主题的主题名、参数说明和示例如下:a)主题名$cems/down/{productid}/{deviceid}/eventsb)参数说明1)主题参数见表7,其中responseRequired值为0。2)ServiceEvent参数定义见表8,其中:3)CommPort参数定义见GB/T35031.302—2022的表16。4)commPara参数定义见GB/T35031.302—2022的表17。c)示例示例7:主站通知网关更新通信端口Topic:$cems/down/{productid}/{deviceid}/events数据格式:{"requestID":"12345","responseRequired":0,"deviceID":"GW0001","services":[{"servicelD":"$CommPort_Management","eventType":"COMMPORT_UPDATE_NOTIFY","eventTime":"20210512T121215Z","paras":[{"commPortID":"COM1","commPortType":"COM","shared":"false","enabled":"true","paras":["name":"type","type":"Enum","value":1,'range":"1:RS485,2:RS232,3:RS422","default":1"name":"baudRate","type":"Enum","value":19200,"range":"0:自适应,300:300bps,600:600bps,1200:1200bps,2400:2400bps,4800:4800bps,7200:7200bps,9600:9600bps,19200:19200bps,38400:38400bps,57600:57600bps,115200:115200bps",'default":9600"name":"dataBits","type":"Int","value":8,"range":"5:5,6:6,7:7,8:8","default":"name":"parityBit","type":"Enum","value":1,'range":"0:无校验,1:奇校验,2:偶校验",'default":"""name":"stopBits","type":"Int","value":1,"range":"1:1.2:2".}6.4监控点监控点定义了主站通知网关新增/删除监控点、网关更新监控点状态、网关请求新增/删除监控点三个主题。6.4.2主站通知网关新增/删除监控点主站将该网关新增或删除的监控点列表信息通知给网关。数据模型图(图7)dassdass041主站通知网关新增/则除监控点cems302::MonitorPointm11{productid}/{deviceid}/eventsb7monitorPointID:Stringdescription:String[0..1]+monitorPointType:Enum[0..1]+status:Enum[0..1]+commPortID:String[0..1]+meterReadings:List<MeterReading>[O.1]meter:Object<Meter>[O.1]meteredObject:Object<MeteredObject>[0..1]cems302::MeteredObjectm15+meteredObjectID:Strindescription:String[0..1]meteredObjectType:UIntlocation:String[0..1]cems302::Meterm14meterlD:Stringdescritption:String[O.1]commAddr:String[0..1]commPwd:String[0..1]commPortlD:String[O.1]+protocolCode:Stringprecision:String[0..1]+requestID:String+responseRequired:UInt[0..1]devicelD:String+eventType:StringeventTime:String[0..1]paras:List<MonitorPoint>图7主站通知网关新增/删除监控点数据模型主站通知网关新增/删除监控点请求主题的主题名、参数说明和示例如下:a)主题名$cems/down/{productid}/{deviceid}/eventsb)参数说明1)主题参数见表7,其中responseRequired值为0。2)ServiceEvent参数定义见表8,其中:●eventType值:新增监控点为“MONITORPOINT_ADD_NOTIFY”,删除监控点为“MONITORPOINT_DELETE_NOTIFY”。3)MonitorPoint参数定义见GB/T35031.302—2022的表11,其中meterReadings固定为空。4)Meter参数定义见GB/T35031.302—2022的表14。5)MeteredObject参数定义见GB/T35031.302—2022的表15。c)示例示例8:主站通知网关新增监控点Topic:$cems/down/{productid}/{deviceid}/events数据格式:{"requestID":"12345","responseRequired":0,"devicelD":"GW0001","services":[{"servicelD":"$MonitorPoint_Management","eventType":"MONITORPOINT_ADD_NOTIFY","eventTime":"20210512T121215Z","paras":[{"monitorPointID":"MT0001","monitorPointType":5,"status":1,"portID":"COM1","meterReadings":[],"meter":{"meterID":"M00009","descritption":"9号楼总电表","meterType":1,"commAddr":"123","commPwd":"1234656","commPortID":"COM1","protocolCode":4."precision":"1.0级","isSmart":"true""meteredObject":("meteredObjectID":"MO0010","description":"区域总表","meteredObjectKind":1,6.4.3网关更新监控点状态网关在监控点状态发生变化时,将更新后监控点状态发给主站。数据模型图(图8)dass042网关更新监控点状态++eventType:String图8网关更新监控点状态数据模型网关更新监控点状态请求主题的主题名、参数说明和示例如下:a)主题名$cems/up/{productid}/{deviceid}/eventsb)参数说明1)主题参数见表7,其中responseRequired值为0。2)ServiceEvent参数定义见表8,其中:3)MonitorPointStatus参数定义见表20。表20MonitorPointStatus定义表序号字段类型可选性说明1monitorPointID必选监控点ID2必选监控点状态:{0:离线状态,1:在线状态}c)示例示例9:网关更新监控点状态Topic:$cems/up/{productid}/{deviceid}/events数据格式:"requestID":"12345","responseRequired":0,"deviceID":"GW0001","services":[{"servicelD":"$MonitorPoint_Management","eventType":"MONITORPOINT_UPDATE_STATUS","eventTime":"20210512T121215Z","paras":[{"monitorPointID":"MT0001","status":0}6.4.4网关请求新增/删除监控点网关主动新增或删除其下接入的监控点并通知主站。网关将新增或删除的监控点列表信息通知给主站,主站收到“网关请求新增/删除监控点”后会在30s内通过此接口返回响应消息。数据模型图(图9)dss043网关请求新增/则除监控点{deviceid}/eventsb7+requestID:String+responseAck:UlIntdevicelD:String[0..1]services:List<ServiceEvent>+servicelD:StringeventType:StringeventTime:String[O..1]paras:ListsMonitorPoint2响应Topt:Scems/down/tprodudid}/{deviceid}/events/responseb9十requestID:StringresponseCode:UIntresponseMessage:String[0.1]servicelD;StringeventType:StringeventTime:String[O..1]paras:List<MonitorPointResulbcems302::Meterm14cemscems302::Meterm14+meterlD:+meterlD:Stringdescritption:String[0.1]descritption:String[0.1]meterType:Enum[0..1]commAddr:String[0..1]commPwd:String[O..1]commPortID:String[O.1]+protocolCode:String[0..1]+precision:String[0.1]isSmart:Bool[0..1]monitorPointType:Enum[O..1]status:Enum[0..1]commPortID:String[0..1]+meterReadings:List<MeterReading>[0..1]meter:Object<Meter>[O.1]meteredObjectObject<MeteredObject>[0..1]cems302::MeteredObjectm15+meteredObjectID:Stringdescription:String[0..1]meteredObjectType:UIntlocation:String[0.1]MonitorPointResultb21resultCode:IntegerresultMessage:String[0..1]resultMonitorPoints:List<MonitorPoirtSimple>MonitorPointSimpleb22十monitorPointID:String+description:String[0.1]+meterReadings:List<MeterReading>[O..1]图9网关请求新增/删除监控点数据模型网关请求新增/删除监控点请求主题的主题名、参数说明和示例如下:a)主题名$cems/up/{productid}/{deviceid}/eventsb)参数说明1)主题参数见表7,其中responseRequired值为1。2)ServiceEvent参数定义见表8,其中:●eventType值:新增监控点为"MONITORPOINT_ADD_REQUEST",删除监控点为“MONITORPOINT_DELETE_REQUEST”。3)MonitorPoint参数定义见GB/T35031.302—2022的表11,其中meterReadings固定为空。4)Meter参数定义见GB/T35031.302—2022的表14。5)MeteredObject参数定义见GB/T35031.302—2022的表15。示例10:网关请求新增监控点Topic:$cems/up/{productid}/{deviceid}/events数据格式:{"requestID":"12345","responseRequired":1,"deviceID":"GW0001","servicelD":"$MonitorPoint_Management","eventType":"MONITORPOINT_ADD_REQUEST","monitorPointID":"MT0001","monitorPointType":4,"commPortID":"COM1","meterReadings":[],"meterID":"M00009","location":"9号楼一楼","commAddr":"123456789","commPwd":"1234656","commPortID":"COM1","protocolCode":4."precision":"1.0级","meteredObject":{"meteredObjectID":"MO0010","meteredObjectKind":2,"location":"9号楼地一楼"}响应主题网关请求新增/删除监控点之响应主题的主题名、参数说明和示例如下。a)主题名$cems/down/{productid}/{deviceid}/events/responseb)参数说明1)主题参数见表7,其中responseRequired值为0。2)ServiceEvent参数定义见表8,其中:●eventType值:新增监控点“MONITORPOINT_ADD_RESPONSE”,“MONITORPOINT_DELETE_RESPONSE”。3)MonitorPointResult参数定义见表21。4)MonitorPointSimple参数定义见表22。表21Monitor
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版语文七年级下册第六单元学情检测卷(含答案)
- 二零二五年度鞋类产品回收再利用合同3篇
- 二零二五年度绿化园林工程设计与施工合同2篇
- 二零二五年度科技研发与技术转让三方居间合同2篇
- 二零二五年环保项目委托合同6篇
- 二零二五年度高空作业安全免责与施工安全保障协议6篇
- 二零二五年文化产业园项目三通一平施工合同2篇
- 二零二五年度海洋渔业承包合同规范文本2篇
- 二零二五年度股东持股权质押解除合同3篇
- 二零二五年度酒店客房租赁合同示范文本3篇
- 人教版(2019)必修 第三册Unit 2 Morals and Virtues重点单词及用法总结清单
- 人教版一年级数学上册100道口算题(全册完整版)
- 茶楼服务员培训课件
- 2024危险化学品仓库企业安全风险评估细则
- 2024MA 标识体系标准规范
- 充电桩建设项目可行性研究报告
- 【李宁股份公司存货管理问题及完善策略9000字(论文)】
- 温州食堂承包策划方案
- 四年级数学(四则混合运算带括号)计算题专项练习与答案
- 2024年中国华能集团有限公司招聘笔试参考题库附带答案详解
- 40篇英语短文搞定高考3500个单词(全部)
评论
0/150
提交评论