一种基于ASN.1的矿用物联网管理信息数据标准
扫描二维码
随时随地手机看文章
引言
物联网是通信网和互联网的拓展应用和网络延伸,它利用感知技术与智能装置对物理世界进行感知识别,通过网络传输互联,进行计算、处理和知识挖掘,实现人与物、物与物信息交互和无缝链接,达到对物理世界实时控制、精确管理和科学决策目的。
“感知矿山”是物联网在煤矿领域的典型应用。“感知矿山”是通过高速网络实现对矿山的全面覆盖,对矿山的人(人员定位、无线通信)、设备(综合自动化)、环境(安全监控、矿压监控等)全面感知,并利用直观形象的应用,来全面展现和管理矿山。“感知矿山”是将先进的自动控制、通信、计算机、信息和现代管理等技术相结合,将生产过程的控制、运行与管理作为一个整体,以实现企业的优化运行、控制与管理。
目前,大多数煤矿已经建设了安全监测监控系统、人员定位系统、给排水系统、通风系统、通讯系统、紧急避险系统等信息子系统,实现了基础信息的感知与采集。但是因为没有统一的数据标准,各子系统获取的数据五花八门,只是考虑到数据的获取而没有考虑数据的推广应用,简单地为了信息化而信息化,各个系统之间的数据无法共享,资源重复配置,“信息孤岛”现象严重。部分综合自动化系统也仅仅是简单地将各子系统集中展示,并未真正实现数据的有效分析利用及各子系统的联动,没有给矿山的科学管理和决策带来实际的作用。
制定矿用物联网的数据标准是煤矿物联网的关键技术。只有数据具有统一的表达、交换和处理标准,才能真正实现数据的充分利用,从而实现多系统的联动,通过数据分析帮助管理和决策。
本文以矿用设备管理为研究课题,以设备的管理信息为研究对象,提出一种基于抽象语法标记1(AbstractSyntaxNotationOne,ASN.1)的管理信息数据标准,包括命名、语法、编码及应用协议,实现数据的统一描述及传输,以满足多系统对同一数据源的获取及利用,为真正实现'感知矿山”秘智慧矿山”打下基础。
1工作原理
本文参考简单网络管理协议(SimpleNetworkManagementProtocol,SNMP)的设计,采用面向对象的设计思路,将每个管理信息看作一个管理对象,比如一个属性、一个配置,甚至一个实时值,都看做一个管理对象。
然后,采用OID的编码方法和树形结构对每个管理对象进行唯一标识;按照设备类型编写管理信息库,每个管理信息库包含该类设备的所有管理信息对象,管理信息库的编写采用ASN.1,ASN.1规定了可以使用的数据类型和语法。
被管理的设备实现ASN.1描述的管理信息库device.mib,将抽象数据结构映射到本地具体实现的数据结构;管理设备参考device.mib可以知道被管设备具有哪些管理对象以及相应的名字、类型和语义等,然后通过应用通信协议访问被管设备。信息传输采用基本编码规则(BasicEncodingRules,BER)。
设备管理的架构如图1所示。
2管理对象数据标准
2.1对象命名
数据交换标准的一个核心问题就是命名的唯一性问题。命名用于标记管理对象。本文采用名字-数字对来命名一个管理对象。文本描述的名字方便于人阅读和查找,而对应的数字则用于设备之间的通信。
图1设备管理架构示意图
管理对象的命名结构采用OID的树形结构。管理对象的对象标识符是从根节点开始到对象节点路径上边标识的顺序连接,是一系列点分数字串的形式,它是对象的唯一标识。
管理对象命名结构举例如图2所示,则传感器的类型(type)这个管理对象的对象标识符为为“1.1.1.2”。
2.2描述语法
管理信息库的描述应独立于平台、机器与程序语言。ASN.1用一种统一的方式描述数据结构,与具体的机器与语言无关,本文采用简化的ASN.1对管理对象进行描述。
为了数据描述的简洁性和可扩展性,本数据标准支持表1所示基本数据类型:
每个类型有一个唯一标签,用来区分不同的数据类型,作为数据传输时接收方判断数据类型的依据。用户也可以使用TEXTUAL-CONVENTION自定义数据类型(类似C语言的typedef自定义数据类型)。
一个管理对象定义通常包括下面五个域:
(1)OBJECT:是一个字符串名,它叫OBJECTDESCRIPTOR,它指定对象类型,这个类型和OBJECTIDENTIFIER相对应。
语法:对象类型的抽象语法。描述对象的类型和取值范围等。
定义:对对象类型语义的文本描述。实现中必须保证对象的实例满足这个定义。
访问:只能取只读,读写,只写或不能访问这四个值。
状态:强制(mandatory),可选(optional)或过时的obsolete)。
2.3应用协议
应用协议主要包括管理对象的读写,规定了3种报文,报文属于应用层,与通信链路类型无关,见表3。
2.4编码规则
传输采用 BER(Basic Encoding Rules)编码规则。BER传输语法的格式是 TLV 三元组 <Type,Length,Value>,如图 3 所示。
TLV每个域都是一系列八位组,对于组合结构,其中V还可以是TLV三元组。BER传输语法是基于八位组的,自定界的编码,因为其中L明确界定了八位组的长度。BER是大端编码的,其八位组的高位比特在左手边。传输时结构如图4所示:
3实例及分析
传感器设备的部分设备管理信息描述如下所示:
sensorTypeOBJECT-TYPE
SYNTAXINTEGER
ACCESSread-only
STATUSmandatory
DESCRIPTION
“传感器类型:CH4(1),CO(2),CO2(3),H2S(4)…可
增加扩展类型”
::={sensor1)
sensorNameOBJECT-TYPE
SYNTAXOCTETSTRING
ACCESSread-only
STATUSmandatory
DESCRIPTION
“传感器名称”
::={sensor2)
sensorValueUpdateRateOBJECT-TYPE
SYNTAXINTEGER
ACCESSread-write
STATUSmandatory
DESCRIPTION
“传感器数据刷新时间,单位为ms”
::={sensor3)
sensorStatusOBJECT-TYPE
SYNTAXINTEGER
ACCESSread-write
STATUSmandatory
DESCRIPTION
“传感器状态:正常(1),掉线(2),故障(3)……”
::={sensor4)
上述实例是传感器类型设备管理信息库描述文件(sensor.mib)的一部分,定义了sensorType、sensorName、sensorValueUpdateRate、sensorStatus等传感器管理对象sensorType的类型是整数,访问权限是只读,状态是强制实现,OID是sensor.1(完整OID是1.1.1.1)。其他设备如要访问这个管理对象,则使用应用协议的1号报文GetObjectValue,参数为sensor.1,然后通过BER编码发送给具体的传感器设备,传感器设备根据OID找到对应的管理对象,然后通过3号报文Response返回具体值。
4结语
本文提出一种基于ASN.1的矿用物联网管理信息数据标准,包括管理对象的命名、语法、应用通信协议与编码规则,该标准提供了一种统一描述和传输数据的方法,独立于平台与语言,为煤矿各子系统数据的充分分析利用以及后续的系统联动、科学管理与决策提供了基础,是实现真正的“感知矿山”的关键技术。该标准只是一种可能的数据标准,目前仅应用于本公司的设备管理,这里抛砖引玉,煤矿行业的数据标准建立需要整个行业的共同努力。
20211223_61c4115f05f92__一种基于ASN