城市轨道交通综合监控时钟子系统的创新实现与工程应用

2018-09-26 10:43
现代城市轨道交通 2018年9期
关键词:服务器端报文号线

邓 敏

(南京轨道交通系统工程有限公司,江苏南京 210019)

城市轨道交通综合监控系统(ISCS)采用集中控制、分散采集数据的方式,在不同站点、不同设备保持时钟的一致性非常重要,因此,时钟子系统(CLK)是其重要的辅助系统。在城市轨道交通多年的发展中,已经形成一些时钟系统的解决方案[1-4],但由于轨道交通ISCS 系统的范围不仅限于局域网内,因此很多局域网的同步技术[5-6]并不可行。网络对时协议(NTP)采用传输延时校正对时,时钟服务器采用点对点的方式逐一对客户端进行对时,其在网络传输抖动较小的环境中使用时精度较高,而且轨道交通 ISCS 系统的单位传输数据量基本恒定,不会影响 NTP 的对时精度,故采用 NTP 会比较经济和实用。

城市轨道交通 ISCS 系统集成和互联了很多子系统,如电力监控系统(PSCADA)、环境与设备监控系统(BAS)、火灾自动报警系统(FAS)、视频子系统(CCTV)等,这些系统的通信总量巨大,因此 CLK 系统不能产生过多的报文影响其他子系统的通信。另外,由于 CLK 系统必须采用用户数据报协议(UDP)进行通信,因此也需要保证在其他通信量的影响下能够正常工作。ISCS 实现了一套适应于大规模通信环境下的CLK 系统,以下对该系统的具体实现流程加以阐述。

1 综合监控系统总体架构

CLK 系统采用了 ISCS 的架构布局,分为 3 级控制,如图1所示。其中实线是主要的控制/数据通路,而虚线是辅助通路。这种架构考虑了整个结构的清晰性,3 级层次分明,但是考虑到部分操作如果通过控制中心端系统来进行中转,则降低了系统效率,所以 CLK 系统由客户端直接对车站端系统进行操纵。

根据 ISCS 系统总体架构,其硬件系统架构如图2所示,实现了采用 2 级时钟模式。

图1 城市轨道交通 ISCS 系统总体架构

在控制中心,部署高性能服务器 1 台,布置 NTP 的服务器端,一方面负责采集准确的时间,另一方面作为标准时间的第一级时钟“源”。

在车站监控一级,每个车站设置 1 台工控机,通过高性能交换机与车站各设备相连。工控机部署了 NTP 客户端,一方面向策略监视端提供自身时间,另一方面对连接在其上的其他子系统的设备授予时间。

监控中心客户端由 PC 组成,部署了策略监视端,一方面定时获取服务端的标准时间,另一方面定时获取下面车站客户端的时间状态,从而判断是否需要对车站客户端进行时间校对。如果需要,则向 NTP 服务器端索取查询当前所有站点的时间。

2 时钟子系统的系统结构

CLK 系统采用统一管理、模块化设计思想,其系统结构如图3所示。

2.1 平台硬件

对时服务器和客户端采用网络(主要是车站和监控中心之间的骨干网)进行连接。

2.2 接口 A

系统通过接口 A 为平台服务组件提供硬件标准接入服务功能。

2.3 平台软件

对时服务模块属于基础性软件模块,为各个子系统提供应用程序编程接口(API)进行调用,使得各个子系统可以进行自身的授时。

(1)通信模块,即通信中间件,通过其可完成各个服务之间的消息传递,并能实现服务间通信的解耦与高效。在本系统中,通信模块主要作为对时服务与实时库服务之间的信息交互通道。

(2)操作系统,是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。

(3)实时数据库又称为内存数据库,是开发实时监控、数据实时采集等功能的支撑软件,可以满足对实时信息的完整性、一致性及安全共享的需求,可以方便地进行系统监控和优化控制。在该系统中,实时数据库作为一个平台支持软件,可以作为系统部件失效的事件中转器。

(4)对时报文组装工具,可以根据系统需求组装合法的对时报文。

(5)对时时间计算算法,主要用户客户端可根据NTP的要求进行时间的计算,给出准确的时间。

(6)标准时间采集模块,主要用于服务器端,可以采集准确的物理时间。目前只是采用了简单采集服务器的本地时间作为标准时间,后期将采用子母钟的形式获取更加准确的时间。

图2 ISCS 系统硬件结构

图3 CLK系统结构

(7)保活探测模块,主要用于对服务器与客户端进行定期的探测,查看时钟客户端是否正常。实现的方式非常简单,对每 1 个客户端启动 1 个定时器,如果在规定时间内,客户端没有发来时间同步的报文,则认为客户端失效,向实时数据库报警。

(8)本系统采用订阅发布模型,只有对那些向服务器订阅时间的站点,才能够定期完成向服务器同步时间的功能。这个模型主要用来方便测试阶段系统的部署。

(9)线程池管理模块,包含了线程池管理器、池中的工作线程、任务实现接口以及任务队列。通过线程池的重用大大减少了不必要的开销,其线程执行速度也将大幅提升。

(10)时钟服务器端,位于监控中心,用以组合底层支持模块,形成服务器功能。服务器端需要介入 NTP的执行过程,获得并保存各个站点发送来的时间,从严格意义上讲,这个时间并不一定是准确的时间。

(11)时钟客户端,位于车站工控机,一方面,定期与服务器保持时间的同步,另一方面,为连接在工控机上的各个设备提供时间。对时代理主要架构在客户端上,界面非常简单,主要显示本机时间以及己方的监听端口,监听端口设置在配置文件中。

2.4 接口 B

平台通过接口 B 为业务系统/上级软件提供基础服务功能。

2.5 应用软件

由监控中心的用户界面逻辑和客户端对时代理的逻辑所组成,为用户提供友好的监控界面。

(1)时钟监控中心用户界面(UI),主要位于监控中心的监控客户端上,通过对服务器的定期查询,为用户提供友好的信息展示(主要展示各个站点的当前时间)。如果时间不符合要求,则直接对站点的时钟客户端下指令,要求其进行时间的同步。

(2)NTP 代理 UI,通过代理服务器实现 WEB 访问,类似于客户端 UI 进行的布局与功能设计。

3 时钟子系统的创新实现

3.1 创新策略

CLK 系统是 ISCS 的一个重要子系统,但是 ISCS 整个系统的通信量相当巨大,为此需要在 CLK 系统的设计上采取相关策略。

首先,在系统的服务端与客户端之间增加 1 个策略监视节点,获取各客户端及服务端的时间状态,通过对这 2 个时间状态的比较来决定哪些客户端需要对时,避免了服务端与客户端之间大量频繁无意义的对时操作。正常的时间轮询时,客户端也并非不停地向监视节点发送本地时间报文,而是 1 min 发送 1 次,以此减轻各节点的负担。此外,针对需要进行对时的客户端,策略监视端还进行了以下 2 个考虑。

(1)主动对客户端进行对时。策略端如发现某客户端时间有偏差,即采取主动对时方式;另外,策略端还提供了人工强制的手段,使得其可直接通过人为干预对时钟客户端进行同步。

(2)采用“有限可靠”机制。时钟客户端对于发送出去的同步请求报文,如果没有收到服务器的应答,则在 10 s 后重新发送一个请求报文,以求得到可靠的反馈。

3.2 订阅/发布模型的定义

ISCS 采用了保活机制,为了对测试和部署提供便利,系统实现了订阅/发布模型,其定义如下:①时钟分发矩阵是一种数据结构,保存了当前需要完成时钟同步功能的车站客户端节点列表;②订阅/分发模型定义了一种一对多的依赖关系,基于中介让多个订阅者同时监听同一个物理时钟。

系统中,由策略监视端承担中介角色,获得时钟,并且完成对客户端的同步要求,其订阅/取消订阅流程如图4所示。在系统的内存以及实时数据库中,以类的形式保存了所有站点时钟客户端的信息,作为全局信息提供服务。

图4 订阅 / 取消订阅算法流程

3.3 时钟的实现

时钟同步的过程由客户端发起,其流程如图5所示。根据网络对时协议,同步请求报文定义了 4 个重要参数T1~T4。其中T1 和T4 是时钟客户端的时间戳,T2和T3 是服务端的时间戳。T1 是客户端发出请求报文的时间戳,T2 是服务器端接收到请求报文的时间戳,T3 是服务器端将该请求报文(服务器端仅改动了T2、T3 信息)原路返回时的时间戳,T4 是客户端收到应答报文的时间戳。其中,计算时间偏差xp的公式如下:

4 时钟子系统的工程应用及效果展示

南京市麒麟创新科技园现代有轨电车 1 号线全线长约 8.95 km,其中高架段 1.02 km,地面段 7.93 km,全线共设置 13 个站(其中 5 个换乘站)、1 座车辆基地,平均站间距约 728 m。线路与轨道交通 2 号线、S6 线、8 号线、10 号线及 12 号线衔接。ISCS 系统最终在南京市麒麟科技创新园现代有轨电车 1 号线上进行了示范应用。该 CLK 系统通过在麒麟有轨电车 1 号线控制中心的时钟源及策略监视端,实现了对全线各个车站设备的时间进行校时,并取得了良好效果。其系统运行界面如图6所示。

图5 时钟客户端的同步过程

图6 麒麟有轨电车 CLK 系统的实现效果

5 结束语

本文介绍了在当前城市轨道交通综合监控系统中对于 CLK 系统的创新实现,通过全新的对时策略与订阅发布机制使得系统对时效率与可靠性都得到提升。最后该系统经过在麒麟有轨电车上的工程应用,有力地保障了全线设备的时间精确同步,同时也实际验证了该系统创新的价值与意义。

猜你喜欢
服务器端报文号线
基于J1939 协议多包报文的时序研究及应用
Linux环境下基于Socket的数据传输软件设计
CTCS-2级报文数据管理需求分析和实现
2020?年中国内地预计开通?91?条城轨交通线路
杭州地铁1号线临平支线接入9号线通信系统的改造
浅析反驳类报文要点
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
ATS与列车通信报文分析
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用