(中车青岛四方机车车辆股份有限公司,山东 青岛 266111)
动车组列车地面功能调试是动车组生产最关键的步骤之一,调试过程复杂且消耗大量的人力、物力,调试数据繁多且利用率较低。为提高调试效率,减少人为因素影响,保证调试结果的可靠性,保证试验安全高效进行,对列车状态进行远程实时监控十分有必要[1]。
目前,利用无线通信技术对动车组调试状态实时监控系统还处于一个较低的水平,仅少部分试验工具实现了远程数据采集功能,列车功能调试仍按照功能检验文件进行功能验证,观察试验现象,记录试验结果,未对调试过程中整个列车状态进行监控。为满足现代化智能监控管理要求、快速灵活监控动车组调试状态,本文提出了一种基于无线通信的列车调试状态远程监控系统,利用多线程技术实现多列在调动车组状态同时监控,提高了远程状态实时监控效率;采用数据库管理与储存状态数据,为故障诊断提供数据支撑,提高了调试质量的可追溯性;监控界面设计友好、便于操作实现了集中监控、管理与维护[2-3]。
列车状态远程实时监控系统由数据采集模块、无线通信模块、数据管理平台三部分组成其系统结构图如图1所示。
图1 系统结构图
根据动车组WTD装置实时数据接口通信协议,系统通过车载数据采集装置连接到动车组WTD,以UDP的通信机制实时采集调试状态数据;采集到的数据会推送到无线通信模块进行重新打包,利用以太网将状态数据远程发送到数据管理平台的数据管理服务器;数据管理平台对数据进行解析,将状态信息推送到数据监控平台进行发布;将故障信息推送到监控平台并发出警报;同时全部数据将会存储数据库中,并能够实现历史数据的查询、导出功能。
结合动车组WTD装置接口数据协议,对动车组功能系统按照“系统-模块-设备-参数”四级进行分析,得到牵引控制系统、制动控制系统、等功能系统的主要动车组参数,结合动车组调试现场需求,列车状态远程实时监控系统应具备以下功能:实时采集多列动车组状态数据并利用无线通信将数据发送;接收远程发送的列车数据,并将数据储存在数据库中;列车状态监控界面应实时显示在调动车组状态信息。同时,从工程实际应用的角度出发,系统应有较高的可靠性、实时性和可扩展性。
车载数据采集装置任务量大,需要较好的处理器性能,同时考虑车载环境中抗震动、温度、湿度的要求,选用飞凌嵌入式工业级 FET210核心板并采用三星公司生产的 S5PV210 芯片作为主处理器, 基于 Cortex-A8架构,处理器主频可达 1 GHz,具有 32/32 KB 的数据/指令一级缓存,512 kB的二级缓存,配备 512 MB DDR2 内存、1 GB SLC Nand Flash,具有2000 DMIPS的高性能运算能力,完全能够满足车载数据采集装置性能的需求。
无线通信模块采用DM9000A作为网络主控芯片集成了 10/100 MB 物理层接口,读写时间压缩到 10 ns,在内部集成 16 KB SRAM 作为接收和发送的 FIFO 队列缓存。模块采用WiFi与4G冗余通信,优先使用WiFi通信,数据通信速率不小于2 Mbit/s,时延不大于500 ms。
数据管理平台服务器用于处理相关业务逻辑、请求转发,可支持不少于1000个用户的并发访问,具备SQL server数据库插件,储存空间为50 TB,满足300列动车组3年得数据储存量。
数据采集模块是利用车载数据采集装置,通过匹配车型的WTD协议,实时监控WTD数据通信接口,获取动车组实时状态信息,并将状态信息推送到无线通信模块。
本系统利用WTD实时数据读取接口,获取动车组调试数据,在数据传输过程中,首先由数据采集模块向WTD发送注册帧,WTD主机回复确认帧,然后开始发送数据。WTD在发送数据确认帧后,进行周期性数据包的发送,包括实时数据包和状态数据包。数据采集模块收到实时数据包和状态数据包需要回复确认帧,WTD周期性数据的发送频率不大于1秒,若WTD/PTU等待5秒也未收到相应回应,则认为数据传输流程结束,停止所有数据发送,等待PTU的重新注册。
电源向WTD通信接口监控模块和信息处理主机供电,可跟据现场环境选择AC220V供电或者DC00V供电,监控模块监控、采集动车组状态数据,并将数据传输至信息处理主机进行重新打包推送到无线通信模块。
图2 数据采集模块结构设计
车载数据采集装置应用时放置在动车组的总配电柜附近,用M12以太网线连接WTD,电源可根据现车环境就近取电;不同车型应用时,可通过切换数据协议配置表满足数据采集要求。
无线通信模块是数据采集模块和数据管理平台之间的桥梁,主要作用是列车状态信息发送到数据管理平台。
为保证系统能够同时监控多列在调列车,实现无线通信服务器“一对多”的通信模式,本系统采用基于多线程的并发型通信服务器,其中包括一个监听线程和多个通信线程。监听线程实时监听是否有客户端连接请求,当有客户端连接请求时,监听主线程调用Accept()函数,受理客户端请求并且监听线程派生一个通信线程,通信线程用于实现客户端与服务器之间的通信,而监听线程则继续监听客户端连接请求,当监听线程把通信任务交给通信线程之后,就不在对通信线加以控制和调度。多线程通信服务器原理如图3所示。
图3 多线程结构服务器设计
当地面数据接收服务器接收到列车发来的数据时,数据会被多个处理线程应用,若这些处理线程处理不当则会产生资源访问冲突,造成系统运行错误。为避免处理线程处理不当造成的系统运行错误,本系统采用lock关键字来协调各个线程之间的执行次序。当线程1对数据资源进行访问时,lock()将线程1与被访问资源加锁,若此时线程2也要同一资源进行访问时,必须等线程1与被访问资源解锁之后才能访问。
无线通信发送器将打包好的数据发送到地面接收器,然后推送到数据管理平台,数据通信机制为TCP/IP协议,通过调用传输层套接字API建立连接。在状态数据从列车数据采集模块向数据管理平台的发送过程中,采用得TCP流数据模型,无线通信模块须将要发送得数据进行必要的编码打包,当信息数据到达数据管理平台进行数据解析,且对数据信息做进一步的处理[4-5]。
因调试厂房电气环境复杂,特高压通断电过程中会对厂房内无线网络产生影响,为保障状态数据的正常传输,系统无线网络采用“WiFi-4G”冗余模式,即无线通信方式包括:4G网络和WIFI网络两部分,两者相互冗余,在厂房无线局域网覆盖范围内优先使用WIFI网络进行通信,当厂房内WiFi信号不佳或者其他情况利用4G网络通信。
数据管理平台负责解析接收到的数据,数据解析完成后分别发送到数据库进行储存和发送到数据监控平台进行显示;数据库负责数据的储存,在数据库中建有多张数据库表格主要包括故障信息表格、状态信息表格、车辆基础信息表格、人员信息表单和用户登录表单等,各个表格按照各自定义的格式储存数据;数据监控平台通过本身的各个功能模块完成列车状态信息的实时显示、故障信息实时警报、历史信息查询和用户登录等功能[6]。
数据管理平台解析得到得数据可以分为状态信息、故障信息和请求信息三类,并按照各个数据管理流程进行处理。
状态信息:首先对状态信息中的列车序号进行判断,若当前车辆信息显示的列车序号与接收到列车序号一致,则数据监控平台的列车系统状态数据将会更新到最新的状态;若通过判断当前车辆信息显示的列车序号与接收到的列车序号不同,则接收到的这条状态信息只会存储到数据库而人机交互界面中的数据不会发生改变。
故障信息:在接收到故障信息时,数据管理平台将故障信息按照故障分类标准存储到数据库中,并且在数据监控平台中进行故障报警。数据管理平台会对接收到的故障信息的故障等级进行识别,当故障等级高于中等故障时,会启动移动检修维护服务,实现故障信息实时通知到技术人员。
请求信息:当数据管理平台接收到列车请求信息时,数据处理层会对列车请求连接还是请求断开进行识别,当列车为请求连接时,通信服务器建立与该客户端之间的通信线程,用户列表添加该列车客户端;当列车的请求信息为请求断开时,通信服务器会销毁与该客户端之间的通信线程,并且对用户列表进行查询,将该列车客户端从用户列表中删除。
为减少大量数据的频繁写入和相关数据的查询和导出对系统资源的占用,本系统利用SQL Server数据库来储存列车状态监控过程中产生的海量状态数据,数据的储存方式为聚簇存放[7],它具有以下优点:
1)聚簇功能可以大大提高按聚簇码进行查询的效率。
2)聚簇以后,相同聚簇码的元组聚簇在一起,节省了存储空间。
3)聚簇功能不仅适用于单个关系,也适用于多个关系。
在数据库结构设计过程中要充分考虑未来数据结构的变化,减少数据库中的链接和迁移。针对于列车设备和故障资料累积数量多、储存压力大和快速提取困难,在对列车各系统和故障相关资料分析的基础上,合理分类和处理加工,有针对性的对数据结构进行了设计和优化,在数据库中建立了多个数据表用于储存数据信息[8-9]。
数据监控平台用于显示数据采集模块发送过来的状态信息,包括牵引控制系统、制动控制系统、高压供电系统、辅助供电系统、实时轴温检测系统、网络状态检测系统、车门控制系统、空调控制系统、旅客信息系统、烟火报警系统。
为了让界面与逻辑分离,避免在修改界面控件的内容时产生异常,本系统中列车状态信息的接收是由通信线程完成,而在系统中的界面控件是由系统主线程生成的,所以窗体中的控件被绑定到主线程,如果想要在通信线程中调用窗体的控件,则必须使用控件的Invoke方法来将调用封送到适当的线程。
系统可以通过数据库通信语言对数据库进行查询,操作人员可根据情况需要对数据库中的信息按照一定的条件进行查询,查询结果会显示到数据监控中心,并且可以将查询结果以Excel表格的形式导出。
本系统主要针对动车组调试过程中,对列车各个系统的设备和参数进行实时监测,确保地铁列车的连续运行性能良好,在地铁列车发生故障时能够及时的发出警报,及在地铁列车运行之后能够对列车的运行数据做出一定的分析。为验证系统功能及系统运行性能,搭建了客户端与服务器通信平台,进行了多个车载数据采集装置与数据管理平台进行通信实验,对整个系统的功能完整性、工作稳定性、数据刷新实时性以及所有系统功能的实现等进行系统测试。
通过车载数据装置向数据管理平台发送列车状态数据,在列车监控平台上检测数据显示,数据显示结果如图4所示。
图4 列车状态数据显示
由图4得出受电弓动作状态、受电弓位置、辅助风压、网侧电压等列车数据显示正常,且数据更新无卡顿现象,证明系统能够满足动车组状态监控功能。
Speedtest是 Linux 下的一款专业带宽测速软件,车载数据采集装置运行其客户端软件 speedtest_cli,speedtest_cli 首先寻找最近的运行 speedtest_server 的测速服务器,之后统计一段时间内的平均上传及下载速度。为了测试车载终端发送列车运行信息的实时性能,在车载终端运行 speedtest 通过测试实时网速[10]。
图5 通信性能测试
由测试可知平均上传速率可以达到 5.15 Mbit/s,而本课题状态信息的发送对网络速率的要求为大于 2 Mbit/s,因此,本系统采用的无线通信方式能够很好地满足系统通信需求,通信实时性能良好。
本文的在深入研究与分析动车组调试现场情况后,将系统分为数据采集模块、无线通信模块及数据管理平台分别进行设计,通过动车组WTD装置实时数据接口实时采集状态数据;利用WiFi-4G冗余设计保证了数据远程传输的可靠性;建立数据库及数据监控平台,实现了数据的分层储存与管理,经验证系统满足动车组调试状态的远程监控需求。随着计算机技术和远程通信技术的发展和数字化工厂建设潮流的推进,动车组调试状态远程监控最大程度保障了动车组出厂前功能调试的准确度及调试信息的可追溯性,对未来更智能化、更信息化、更多元化的动车组全寿命信息数据系统提供了重要参考与研究基础。