APP下载

铁路隧道防护门远程监控系统设计研究

2022-05-24王苏桁熊肖磊周奇才

机械工程与自动化 2022年2期
关键词:风压树莓线程

赵 炯,王苏桁,熊肖磊,周奇才

(同济大学 机械与能源工程学院, 上海 201804)

0 引言

在我国铁路网高速发展的背景下,铁路隧道特别是长大隧道内的灾害预防和救援受到了越来越多的关注。由于列车经过隧道时会在隧道内产生较大侧向风压的“活塞效应”,从而对隧道内存放的通信、信号、电力等设备产生不利影响,因此在铁路隧道内通常都会设有隧道防护门,从而保证轨旁设备的长期稳定运行。

近几年隧道防护门事故频发,这是因为在“活塞效应”的循环作用下,隧道防护门可能会出现门板撕裂、门锁变形甚至门体坍塌等问题,如果隧道防护门脱落并且倒向轨道一侧,将会造成严重的列车运行事故,因此在“活塞效应”循环作用下确保隧道防护门的可靠性显得尤为重要。目前,国内针对隧道防护门的使用状况检查大部分仍然采用人工巡检的方式,不仅耗时耗力,并且难以判断隧道防护门的真实状况,因此在隧道服役期内对隧道防护门远程监控系统进行研究成为亟需解决的问题。

本文针对上述情况,设计了基于MQTT(Message Queuing Telemetry Transport)协议的隧道防护门远程监控系统,可以实现对隧道防护门开闭、风压以及振动等状态信息的实时监测,提升了隧道防护门的可靠性。

1 铁路隧道防护门远程监控系统总体架构

结合隧道的应用环境特点,选择具有独立计算能力的树莓派(Raspberry Pi)作为中心采集器,通信协议采用轻量级物联网协议——MQTT协议。依据上述条件设计的铁路隧道防护门远程监控系统主要由感知层、通信层和应用层三部分组成,如图1所示。

第一层为感知层。感知层主要负责实现系统底层的数据采集功能,由树莓派与多种传感器组成。考虑到部分隧道地理位置较为偏僻,网络条件较差甚至无网络的情况,该采集器需要具有数据本地存储与分析计算的功能,因此选择树莓派作为中心采集器。树莓派是一种只有信用卡大小的卡片式电脑,具有价格低、体积小的优点,与常见的51单片机和STM32等嵌入式微控制器相比,不仅可以完成IO引脚控制,还能运行Linux操作系统,因此可以完成更复杂的任务管理与调度,支持更上层应用的开发。除此之外,树莓派还支持I2C、串口以及WiFi等多种通信方式,具有较高的可扩展性。

第二层为通信层。通信层主要负责实现感知层与应用层之间的通信,树莓派通过WiFi或4G模块将数据发送到MQTT服务器,再由MQTT服务器将数据转发到监控平台进行数据存储、数据分析以及数据展示等。

第三层为应用层。应用层主要负责搭建监控平台,首先订阅感知层所采集到的实时数据并对其进行解析,然后执行存储、分析、可视化等操作。目前平台端开发主流的方法是使用框架技术进行开发,因此采用Spring Boot + Spring MVC + MyBatis框架作为主体进行开发,采用Mysql数据库对数据进行持久化,然后在前端网页采用Bootstrap框架进行展示。

2 数据采集器工作原理

感知层主要由树莓派、监控摄像头、接近开关、风压传感器以及振动传感器组成。

摄像头主要用于记录隧道洞室内场景发生变化的情况,考虑到隧道洞室在安装完成后通常很少有人员出入,因此实时视频的意义较小,并且在树莓派上实现实时视频推流的资源开销巨大,因此对于图像采集采用固定时间间隔拍照的方案,将当前图像与之前保存的图像进行对比,如果两次图像整体变化较小,则认为图像无变化,不会进行上传;如果图像整体变化较大,则会覆盖之前图像并进行上传,其特点为在不使用高消耗的视频推流技术的条件下,又提供了隧道内获取的图像。

图1 铁路隧道防护门远程监控系统总体架构

接近开关安装于锁盒内,用于记录隧道防护门的开闭情况,在门体上侧会有指示灯提示防护门开闭情况,并且在发生变化时会将该防护门的开关信息上传到服务器端。

风压传感器与振动传感器安装于防护门前面板处,用于采集列车经过时的风压以及振动数据。由于铁路隧道防护门大都是在“活塞效应”的循环载荷作用下引起的疲劳破坏,在遭到破坏前通常都没有特定的物理量来进行判断,因此可以通过采集大量的振动数据,先在服务器端对振动数据进行分析,提取出用于判断隧道防护门健康状况的特征量,再对隧道防护门的真实状态进行评估。

采集程序运行后会开辟多个进程,按功能主要可分为四类:数据采集线程、数据传输线程、数据分析线程以及数据清理线程。其中数据采集线程主要用于获取传感器所采集到的数据并存储到本地数据库中;数据传输线程主要用于从数据库中加载刚刚采集到的数据并发送至MQTT服务器端;数据分析线程用于对本地数据库中的数据进行分析,从而判断隧道防护门的实时状况;数据清理线程主要用于对数据库中过期信息进行及时清理,以免因为存储了过量数据而导致系统崩溃。这种划分多个线程的方式实现了数据采集与数据发送等功能的解耦,避免了由于网络较差的场合导致采集到的大量未发送数据堆积内存中致使内存溢出,并且充分利用了树莓派多核CPU的计算能力,提高了数据的采集、发送以及分析的效率。

在树莓派通电启动后会自动执行该采集程序运行脚本,其采集流程如图2所示。

图2 数据采集流程

该程序首先对树莓派进行初始化,确保树莓派可以通过IO、I2C以及串口等方式与传感器正确通信并获取到数据,如果初始化失败,则会将错误日志存入数据库中并且将该错误日志进行上传和打印。在初始化成功后,监控摄像头采集线程以及接近开关采集线程是长期运行的,不受其他线程的影响,并且在采集到数据后会直接上传。对于风压传感器以及振动传感器,由于采集频率较高并且只有列车经过时才能采集到有效数据,为了降低功耗,在树莓派初始化成功后,风压数据采集线程进入低速采集模式,每秒采集10次,当风压大于0.1 kPa时,则会唤醒振动数据采集线程,并且自身进入高速采集模式,每秒采集数据约1 000次,持续1 min,然后再次判断最后一次采集到的风压数据是否大于0.1 kPa,如果仍大于,则继续采集,否则,则结束本次采集流程,接着唤醒数据分析线程对刚刚采集到的数据进行分析,如果得到错误或报警信息则先存入本地数据库报警信息表中,再将采集到的数据以及错误及报警信息上传至MQTT服务器端进行转发,最后恢复到风压传感器低速采集模式。

3 MQTT服务器搭建

MQTT协议是由IBM开发的即时通讯协议,它是一种轻量级消息传递协议,通常与基于服务器的发布-订阅模式一起使用,在TCP/IP之上运行。在发布-订阅模式中,发布消息的客户端与其他一个或多个接收消息的客户端分离。客户端可以发布特定主题的消息,并且只有订阅了该主题的客户端才能接收已发布的消息。

发布-订阅模式需要代理服务器, 所有客户端都与服务器建立连接。 通过服务器发送消息的客户端称为发布者,在服务器上订阅了特定主题的客户端称为订阅者。 服务器过滤传入的消息,并将其分发给该消息主题的订阅者,因此,发布者和订阅者都需要与服务器建立连接。

本系统中,在Linux服务器上搭建Mosquitto物联网MQTT消息服务器作为通信层的核心,其管理界面如图3所示。该模式实现了感知层与应用层之间的解耦,并且消息队列还具有削峰的作用,可以避免同一时间采集到的大量数据涌入监控平台导致监控平台服务器宕机。

图3 Mosquitto服务器管理界面

4 监控平台搭建

监控平台主要负责对该隧道防护门远程监控系统进行综合管理,分为前端和后端两个部分。

在后端采用Spring Boot结合SSM框架进行搭建,Spring Boot能快速构建项目、对主流开发框架无配置集成、独立运行项目、无须外部依赖Servlet容器、提供运行时的应用监控,极大地提高了开发和部署效率。

在前端网页采用Bootstrap框架进行展示,Bootstrap具有简洁且灵活的特点,它将HTML、CSS、JavaScript封装成一个个组件,可以快速搭建一个适合本控制系统的前端框架。使用Bootstrap制作的平台兼容性好,并且通过响应式布局设计可以提供更良好的视觉体验。监控平台登录界面如图4所示,数据展示界面如图5所示。

图4 监控平台登录界面 图5 数据展示界面

5 结语

针对“活塞效应”下铁路隧道防护门的可靠性问题,提出了一种适用于铁路隧道防护门的远程监控系统,该系统可以实时有效地对隧道防护门进行数据采集、数据分析,然后将数据上传至服务器端进行中心化展示和处理。该系统具有极高的可扩展性以及兼容性,能够适应多种隧道场景下的采集、通信要求,并且高度解耦,便于系统的扩展与模块化处理。通过该系统,可以对隧道防护门的实时状态进行分析与预警,为隧道防护门的可靠性提供安全保障。

猜你喜欢

风压树莓线程
天山煤电公司106 煤矿自然风压的规律研究与应用
山间“小精灵”
——树莓
实时操作系统mbedOS 互斥量调度机制剖析
论工况环境温度对风压传感器精度的影响
均匀来流下方柱表面风压非高斯特性的流场机理
基于国产化环境的线程池模型研究与实现
基于树莓派的骑行智能头盔设计
深井自然风压及采空区漏风特征研究
基于树莓派的远程家居控制系统的设计
黄金水果红树莓