新型模组化采集终端设计国网计量中心一、概述(一)背景目前运行的采集终端基于2013版用电信息采集系统系列标准进行设计,还存在以下改进空间:1.型式要求按照终端接口和功能共分为7种,每种终端的接口和功能固定;2.现场若需硬件改动,则需要更换整个终端;3.不同厂商开发的软件,可靠性差异较大;4.应具备更灵活的软硬件结构,以适应采集2.0的发展要求。新型模组化采集终端基于国网科技项目“计量装置在线智能诊断及采集系统运行可靠性关键技术研究”研究成果“模组化终端硬件结构”,进一步提出需求,着重提升稳定性和实用化水平,去除冗余信息,便于安装和运维,将用电信息采集终端设计成多个功能独立的模组结构型式,并按各地区实际需求配制相应的模组组合,形成具有不同功能的终端,同时实现统一操作系统,提升终端运行可靠性;通过加载驱动实现模块识别,提升终端功能扩展性。(二)研究进程1.2016年9月,基于采集2.0架构研究形成终端分报告。2.2016年12月,基于国网科技项目“支持远程安全升级、台区智能识别的用电信息采集终端技术研究”和采集2.0终端分报告形成模组化终端概要设计。3.2017年1月,召开模组化终端技术研讨会,项目组单位和采集2.0参研终端厂商参会,对模组化终端概要设计展开讨论,并对各研究方向进行分工。4.2017年4月,召开模组化终端技术研讨会,项目组单位和采集2.0参研终端厂商参会,对各单位研究成果进行汇总讨论,对下一步研究内容进行分工。二、硬件设计(一)模组化采集终端Ⅰ型整体外观如下图所示:图1整体外观渲染图图2整体外观渲染图图3整体外观渲染图模组化终端的整体尺寸图如下所示:图4整体尺寸图各个模块的堆叠方式如下图所示:图5模块堆叠方式终端模块分解图如下所示:图6整机分解图(三)模组化采集终端Ⅱ型整体外观图:图7整体外观图整体尺寸图:图8整体外观图堆叠方式:图9整体外观图分解图:图10整体外观图三、系统软件(一)操作系统为实现海量数据处理与分析应用、基于宽带信道的用电信息采集、智能用电双向交互等技术,设计了一种性能强大、功能完善、扩展能力强的统一操作系统。目前业内采集终端主流的操作系统为开源的Linux操作系统,但是基于Linux平台的产品有一些缺点:处理性能弱,无法实现高性能的数据处理;软件平台落后,无法实现图像处理、语音处理等主流技术;操作系统没有特定的技术支撑厂商,发展新功能速度慢等,为解决Linux操作系统的以上缺点,定制了采集终端专用操作系统,对Linux内核进行优化和增强,同时完成用电信息采集行业的通用业务,如抄表、通信、安全等。(二)应用软件框架基于面向对象方法设计应用软件框架,要求用于模组化终端各模块中的软件均符合该框架,满足新模块即插即用要求。采集终端应用软件应设计为运行于统一操作系统内的App软件,通过使用操作系统提供的“基本接口”和“通用基础业务接口”实现。 图11应用软件总体框架 三、功能设计(一)档案自动同步用电信息采集系统中,如果能够自动识别和管理电能表和采集器的档案归属关系,将非常有利于简化系统建设和维护过程中的的参数设置和调试、系统运行状态统计等工作。为满足现场电能表档案管理需求,集中器和本地模块必须支持自动搜集现场电能表表地址功能,同时支持准确地区分现场的台区户变关系。终端对于现场搜到的表能够主动上报至主站,主站与营销系统的用户信息进行核对,确认无问题后,再由主站下发档案参数至集中器。对于档案中存在跨台区(不在本台区)的表号,建立一定的机制能识别并切换至正确的对应台区。1.设计思路档案以搜表结果作为数据来源,对主站进行同步。对于同一块表,新搜到的档案将在主站替掉原表的档案,同时根据原集中器的跨台区结果,由主站决定删除原终端内的档案。跨台区结果仅上报,但删除的权限在主站。终端仅有增加档案的权限,主站具有删除或者增加终端档案的权限。对于搜不到的表(营销系统确认该表确实已安装),根据营销系统的现场确认结果,下发给集中器(要对档案做标记,是搜上来的,还是主站下发的)。集中器对此档案电表采用特殊方式抄表。主站档案是通过集中器搜表的结果与营销系统的信息结合后生成并与营销系统形成对应关系。2.功能实现1.新装台区:新装集中器和电表、营销系统信息录入。新装集中器和电表、营销系统将台区、集中器、电表等信息同步给主站,集中器登录主站并注册主站下发搜表、以及跨台区搜表命令,集中器通过事件等方式上报搜表和跨台区结果,主站根据上报的结果,与营销系统比对台区、用户表计信息,建立档案和台区关系,对于多搜到的表计,通知营销系统,对于少搜到的表计,由主站决定是否下发给集中器。2.台区新增电表:新装电表后,营销系统将录入信息,同时将电表信息同步给主站,主站立即下发周期搜表和跨台区搜表命令,集中器通过事件等方式上报搜表和跨台区结果,主站根据上报的结果与营销系统比对台区、用户表计信息若搜到且正确,建立档案和台区关系,若信息错误,则通知营销核对,若未搜到,则由主站确定是否下发该档案到集中器。3.台区更换电表:更换电表后,营销系统进行信息更改,并将更换前后的电表信息同步给主站。主站立即下发周期搜表和跨台区搜表命令,集中器通过事件等方式上报搜表和跨台区结果,主站根据上报的结果与营销系统比对台区、用户表计信息若搜到且正确,建立档案和台区关系,若信息错误,则通知营销核对,若未搜到,则由主站确定是否下发该档案到集中器。4.台区更换集中器:更换集中器后,营销系统将新集中器的信息同步给主站,集中器登录主站并注册,附带新装或参数初始化等状态信息,主站下发搜表及跨台区搜表命令,集中器通过事件等方式上报搜表和跨台区结果,同时更新集中器档案,主站根据上报的结果,建立新的档案和台区关系,同时删除原集中器内相应的档案,原集中器做离线处理。5.跨台区割接用户:运检部门根据运行情况对电表台区进行重新分割为A、B两个台区后,终端进行周期搜表和跨台区搜表命令,A台区上原来的表计信息会以跨台区档案信息的形式通过集中器进行上报,B集中器会上报新表档案信息,主站根据搜表结果,将该表添加到B,并删除A中的档案,并提示营销系统核对。6.营销系统信息有误:采集主站根据各集中器的搜表结果以及营销系统的数据形成档案,若采集主站得到的搜表结果与营销数据不匹配,则提示营销系统核对档案信息,如果采集主站发现的搜表档案信息少于营销主站且给集中器补发档案仍未有结果的,则提示营销主站现场核对。(二)时钟自动同步1.采集终端时钟自上而下的对时方式:采集终端通过主站的精准对时方案,与主站的时钟同步。精准对时方案如下: 图12精准对时方案自下而上的对时方式:方法一,在终端复电并登录后,主站对登录报文的回应为时钟可信,终端判断时钟误差是否超过5分钟。如果超过5分钟,则根据主站时钟和响应延时进行对时后上报终端时钟超差事件、对时事件,经过随机(0~1000秒)延时,按照对时策略进行精确对时。方法二,终端自检时发现自身时钟异常,在线状态时,终端主动发送心跳报文,终端根据主站时钟和响应延时进行对时后上报终端时钟超差事件、对时事件,经过随机(0~1000秒)延时,按照对时策略进行精确对时。2.电能表时钟自上而下的对时方式:方法一,配置4204终端广播校时属性2或属性3,终端依据校时参数对电表进行广播校时,执行单地址广播校时,前提是采集任务中配置有采集电表时钟,对时钟误差超5分钟的对时,执行加密对时。方法二,终端接收到电表主动上报的时钟超差事件或监测到电表时钟故障后,主动对电表执行对时命令,采用698.45的主站授时,对象4000“日期时间”中的属性3定义为主站授时。自下而上的对时方式:如果无信道的限制,采用跟终端同样的对时机制,终端如搜索到新表后,对新表执行对时操作,采用698.45的主站授时,对象4000“日期时间”中的属性3定义为主站授时。(三)数据的高效汇集1.设计思路按任务优先级建立四个链表,分别为:首要、必要、需要、可能。创建的四个链表加起来的总数最大等于配置文件里配置的数量。根据任务优先级,转换压缩任务参数,插入到对应的优先级链表中去。链表内部的顺序按任务ID大小排列如下:执行频率、实际开始时间(开始时间+执行频率+延时)、结束时间、任务运行时段表、ID、时段类型、采集方案类型、采集方案编号。在插入链表前,先判断实际开始时间和结束时间的有效性,当实际开始时间大于当前时间一天以上或实际开始时间大于结束时间或结束时间小于当前时间则视为无效时间。2.功能实现每秒钟分别遍历四个优先级链表:首要、必要、需要、可能。如果当前时间等于实际开始时间,同时在任务运行时段内,执行对应的采集方案;若实际开始时间大于结束时间,任务执行完毕,则从链表中删除该任务;若当前时间大于结束时间,任务执行完毕,从链表中删除该任务。每个任务的采集方案每次只执行一个数据项的采集。根据返回标志,判断该任务此轮是否执行完成。实现过程:图13交互时序图采集终端任务调度功能按任务的优先级由高到低进行调度执行。任务按类别分,优先级从高到低依次为:透传任务、主动上报任务、采集任务。每类任务集合,其子任务本身也有优先级分类,高的先执行,低的后执行。时序图说明:采集终端上电初始化后,先执行采集任务1,在执行过程中,被高优先级的采集任务2打断,调度先保存采集任务1的现场,再切换到采集任务2,开始执行采集任务2。在执行采集任务过程中,又被透传任务打断,先执行透传任务。再执行透传任务过程中也是先执行高优先级的透传任务,透传任务执行完成后,再切换执行采集任务,如果有主动上报任务,随时打断采集任务,优先执行主动上报任务。(四)模组的自识别与诊断1.设计思路为了实现模组的自动识别,每个USB模组设备中有一个固件,固件是固化在集成电路内部的程序代码,USB固件中包含了USB设备的出厂信息,标识该设备的厂商ID、产品ID、主版本号和次版本号等。另外固件中还包含一组程序,这组程序主要完成USB协议的处理和设备的读写操作。USB设备固件和USB驱动之间通信的规范是通过USB协议来完成的。USB的标准描述符包括设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符。2.功能实现USB控制器驱动层实现了不同USB设备控制器的驱动,用于驱动各种不同USB设备控制器硬件工作;USB设备协议栈核心层相当于整个协议栈的中枢神经,负责各类USB消息和数据的处理与传递。核心层进行USB枚举实现,通过识别的模组设备所属的class、subclass与相应的驱动挂接;USB模组驱动层提供了USB类驱动的框架,用于承载提供各种功能的功能类驱动,驱动程序的工作就是把请求数据引导到有正确端点的管道上。图14USB驱动通讯图主MCU程序通过模组所在位置(从左到右按照0-n编号),模组子设备按照(从上到下1-n编号)进行数据读写操作。每个USB设备有一个唯一的地址,这个地址是在设备连上主机时,由主机根据所在位置固定分配这个唯一地址。用一个端点描述符来表示这个设备描述,这样USB就枚举为一个USB标准的设备。主站也对模组位置信息和子设备编号进行管理,若位置信息变更模块回自动识别,同时主站档案也作出相应调整。终端每次复位自动识别设备信息(厂家、设备类型、版本),与主站档案相比对,如果异常则产生告警并且液晶界面提示。主MCU与模组MCU之间需要统一定义一套外部通讯协议来区分不同的模块子设备。每次主MCU通讯都带有位置号和子模块端口号来区分跟不同位置的模组和子设备通讯。(五)远程升级及安全管理1.远程升级方案采集终端的远程升级依托采集系统网络,通过升级管理云服务对终端升级安全及升级流程进行管理,通过操作机上传终端升级程序,配置升级策略并浏览升级进程,终端完成升级后进行上报。主动远程升级的流程图如下:图15主动远程升级流程图终端的远程升级策略是通过升级管理云服务配置的,升sd远程升级流程升级管理云服务操作机终端按升级策略alt配置终端升级策略()处理加密等()写入升级策略()重启升级管理进程()上传升级文件包()版本巡查()版本列表()启动升级()升级准备备份等()文件下载()文件包()文件校验()升级执行