桥梁远程结构综合参数获取与智能评估软件设计
2022-06-01苏新彦马慧宇
庞 珂,李 剑,苏新彦,马慧宇
(1.中北大学 省部共建动态测试技术国家重点实验室,太原 030051;(2.中北大学 信息探测与处理山西省重点实验室,太原 030051)
0 引言
随着综合国力的提升和国民经济的发展,以及国家的“交通强国”战略、“一带一路”倡议的不断推进,桥梁等基础交通设施建设的比例和规模也在逐年上升。中国公路学报在2021年关于中国桥梁工程的学术研究中提到,近年来桥梁建造的技术日趋完善,抗灾变能力显著提高,桥梁的智能化水平也得到大幅的提升。我国公路桥梁总数截至2020年底,已接近100万座,其中将近70%是老旧桥梁。由于受到当时建造水平和对结构复杂性认知的限制,人们无法实时获知老旧桥梁内部结构的受损情况,不能对老旧桥梁的运营维护作出及时准确的评估,导致桥梁损伤积累,引起结构的突发性失效,使用的风险日益增加,维护成本逐年攀升。
近年来,针对老旧桥梁的监测问题,国内外学者广泛采用传感器监测、GPS监测以及移动车辆监测等方式,同时随着深度学习算法的不断优化,也逐渐开始有学者将深度学习应用于健康状况的评估诊断中。在2019年Lee等学者就提出了在桥墩倾斜度监测中应用全球导航卫星系统;Xuan Ji等学者提出使用智能采集器、组网、云平台等现代网络技术,实现了实时桥梁监控、智能分析、安全报警等功能;刘康旭开发了一套基于FPGA和Linux的桥梁健康实时大数据分析系统;张青春等人设计了一种基于Arduino单片机和云服务器的桥梁健康状态在线监测预警系统;杨李东等学者结合物联网和GIS技术开发了城市桥梁健康监测系统;2020年杜立婵等学者基于NB-IoT开发了桥梁健康远程监测系统;欧阳歆泓设计了一种应用于小桥梁的车辆荷载监测方法;黄志贤提出了一种基于NB-IoT通信技术的桥梁健康监测系统方案;2021年申志宇利用STM32和FPGA搭建了硬件控制平台,上位机则采用C#编写各控制功能;同年张鹏飞利用遗传算法优化BP神经网络对桥梁健康进行监测;Thanh Q将离散模型和深度学习结合应用于桥梁的健康监测中,提高了损伤定位的精度;邓斌也提出了一种实时的桥梁健康监测系统。
但这些学者只是针对桥梁的监测数据获取的硬件平台或者应用于损伤定位的深度学习算法做出的优化和改进,并没有将这些硬件平台的搭建和深度学习算法综合运用到桥梁监测的全过程中,没有形成一个完整的监测系统,桥梁的监测过程并不“智能”,无法满足当前社会对于智慧城市或智慧桥梁的需要。
本文设计了一个桥梁远程结构综合参数获取与智能评估软件,综合利用布设在桥梁结构关键部位的传感器,获取桥梁服役环境、运营荷载,软件则借助深度学习训练生成一个可以适用于大部分老旧桥梁的多分类网络模型,从而实现对桥梁结构状态和安全性能评估,解决了老旧桥梁监测周期长、效率低、健康评估难的问题,具有参数获取方便、精度高、健康评估准确的优势。
1 监测系统方案
1.1 总体设计方案
监测系统主要包括:硬件监测系统和控制终端两个部分。硬件监测系统主要负责接收和解析控制终端下发的指令,并完成数据采集和传输等功能;控制终端主要实现与硬件监测系统的通信、数据处理、健康监测与评估等功能。硬件监测系统与控制终端通过WIFI+5G的数据传输方式,严格按照TCP/IP协议进行通信。监测系统总体设计框图如图1所示。
图1 监测系统总体设计方案框图
1.2 硬件监测系统设计方案
硬件监测系统主要包括:数据采集存储模块、传感器模块和无线通信模块。硬件监测系统采用ST公司的STM32H743高性能单片机作为主控芯片,结合MEMS加速度传感器、温湿度传感器和应变传感器等多种传感器构建桥梁多参数监测节点,利用北斗定位系统标记传感器节点和监测桥段的位置,通过DMA的传输方式,将上述几种传感器采集到的数据存储在外部的SDRAM中,然后通过WIFI+5G的方式组成超远程通信链路,将传感器监测节点和终端服务器构建异构跨区域的健康监测网络。该硬件监测系统融合了分布式跨区域的网络传输技术和多传感器融合技术,具有通信距离远,网络质量好、传输速率高,在保证通信质量的情况下实现无线长距离数据传输的特点。各部分功能如图2所示。
图2 硬件系统设计方案框图
1.3 软件设计方案
Qt是一套可以跨平台使用的C++开发库,它封装了大量的工具库;Qt模块化程度高,可重用性好,程序的开发和配置不受平台的限制;Qt中独特的信号和槽机制也方便程序开发。因此本软件基于Qt5.9开发,软件功能模块主要包括3个模块,分别是通信模块、控制模块和数据处理模块。
控制终端位于远端方便操作的地方,主要由计算机和软件组成,软件将硬件监测系统采集到的参数经过计算转换为桥梁挠度、环境和频率等信息,同时将轻量化桥梁监测评估的多分类网络模型嵌入软件中,通过该网络模型对桥梁健康状态进行快速评估,当桥梁出现损失时,测试节点会向监控终端发送报警信号,并由监控终端进行二次精准诊断,从而提高桥梁的健康监测效率。本次桥梁远程结构综合参数获取与智能评估软件的系统功能框图如图3所示。
图3 软件系统功能框图
2 软件功能设计
2.1 通信模块设计
常用的通信协议主要包括TCP/IP协议和UDP协议等。由于桥梁测试系统中传感器采集到的数据量大且数据类型复杂,而且该模块是软件与硬件进行正常交互的前提,通信链路的稳定与否也会直接影响到交互的质量,同时通信过程的可靠性也要求该模块的设计需要很高的稳定性,软件的通信协议如果采用UDP协议则无法保证上述要求,故软件选择采用相对可靠的、基于字节的TCP/IP协议与硬件监测系统进行通信。
由于Qt对传统的TCP/IP协议进行了封装,这使得使用TCP/IP协议更加方便。通过Qt自带的QTcpServer类实现创建TCP服务器、添加或删除多个客户端等基础功能,并通过TCP/IP协议下发控制指令与硬件监测系统进行交互,对采样率和采样时间进行设置,读取客户端数据。同时该模块也具有客户端连接状态检测的功能,当客户端连接状态不稳定或者有中断出现的时候,软件中会有相应的预警信息提示操作人员,在通信过程中软件会每隔5 s,下发自检的指令,对通信链路进行自检,以保证通信链路的稳定性,防止因链路中断而导致的指令下发和数据接收失败等问题,如果链路中断则停止当前的操作,等待硬件监测系统重新发出链接请求的握手信号。通信模块功能如图4所示。
图4 通信模块功能框图
2.2 控制模块设计
如图5所示,这部分的设计主要是下发相应的指令控制到硬件系统中,控制硬件监测系统执行相应的操作。控制模块是整个软件设计的重要组成部分,指令的正确下发时硬件可以按照既定功能正常工作的保障。控制模块主要功能包括以下几个方面:模式配置、控制指令和数据保存。
图5 控制模块功能框图
2.2.1 模式配置
模式配置主要是针对硬件监测系统的数据采集模块设置,主要包括采样率和采样时间这两个部分,这两个部分都是可调的,具体配置选项列表如下所示:
1) 采样率为1 MHz、512 kHz、256 kHz、128 kHz、100 kHz。
2) 采样时长为2 s、1.5 s、1 s、0.5 s。
采样率和采样时间都是通过勾选框和按钮的配合实现指令的下发。选择合适的采样率和采样时长后,点击按钮向监测系统下发对应的指令,指令的格式为八位的十六进制数。其中采样率、采样时长与下发指令的对应关系如表1所示。
表1 模式配置指令
2.2.2 控制功能
这部分主要就是实现采集和数据回传指令的下发。在界面中分别放入不同的QPushButton(按钮)控件,在每一个控件中添加对应的指令,指令格式同样为八位的十六进制数,硬件监测系统在收到相应的指令后,根据指令解析出对应的字符,再根据获得的字符执行相应操作。设置QProcessBar(进度条)控件显示相应的数据回传进度,设置QTextEdit(文本框)控件用来存放回传数据。相应操作功能列表如表2所示。
表2 指令对应功能
2.2.3 数据保存
如图6所示,数据保存包括两部分:软件接收的数据和软件的使用日志。
1) 软件接收到的数据类型包括两种:加速度传感器和应变传感器采集到的八位十六进制数据,以及温湿度传感器和北斗定位模块采集到的字符类型数据等。放置QPushButton控件用来选择保存数据的路径,按照数据的不同格式要求,选择合适的保存方式,如八位十六进制数据采用二进制bat文件格式存放,而字符数据则选择采用txt文本文件的格式存放。
2) 设计使用日志的功能主要是为了方便后期对软件的优化和升级,同时也方便操作人员对软件的使用和维护,减少应操作失误带来的不必要的隐患,降低数据丢失的风险。软件使用日志由软件后台自动生成,无需操作,使用日志主要包含两个部分:软件的操作过程和错误提示。
图6 数据保存功能框图
2.3 数据处理模块设计
2.3.1 挠度数据显示
QCustomPlot是在Qt框架下实现的基于LGPL版权协议的开源项目,它无需进一步的库依赖,文档丰富且使用方便,主要可以对二维曲线绘图和进行数据的可视化,绘图的种类包括如曲线图、趋势图、坐标图、柱状图等。由于Qt自带的QChart库在绘制大数据量的波形图时,运行效率低,无法满足桥梁监测中对复杂的大数据量处理的要求,因此选择采用QCustomPlot库绘制挠度等数据的波形图。
在这部分中挠度的计算主要采用分段曲线拟合的方法,通过将桥梁依据布设硬件系统的位置划分成不同的区域,然后将每一个区域中的挠度值累加求和,从而得出监测区域的挠度值。其中每一区域中的挠度计算公式如下:
(1)
公式(1)中N
(x
)为布设在桥梁不同位置处的应变片采集到的形变数据,X
为该位置处承受力的幅值。m
为采集到的形变值的个数。整座桥梁的挠度为各区域挠度值的和,计算公式如下:
(2)
其中:n
为布设区域的个数。2.3.2 北斗定位数据显示
通过对2.2.3中保存的北斗定位数据进行拆包处理得到包括客户端IP地址、经度、纬度、UTC时间和采集日期等在内的硬件监测系统的布设点位置信息。创建一个QTableView控件,将这些信息依次添加到表格中,同时创建QAxWidget控件,在控件中加载html文件,调用百度离线地图的api接口实现向地图中添加拆包得到的经度和纬度信息,并将其标记在地图中。
通过百度地图可以方便的对布设点的位置进行查看,同时使用百度地图显示也会比表格的显示效果更加直观和清楚。而离线的百度地图也会降低软件本身对网络的依赖程度,提高软件的适用场景。
2.4 健康诊断模块设计
这部分主要设计了一个基于移位卷积的多分类桥梁健康状态识别网络,利用移位卷积操作和轻量点卷积降低了计算的复杂度,并且移位卷积操作为时间序列提供了灵活的感受野,提高了桥梁识别准确度,从而完成对桥梁健康的诊断,当诊断结果为较差、差和危险时会对操作人员做出预警,同时软件将进行二次精准诊断,从而提高桥梁的健康监测的效率。
2.4.1 数据预处理
利用12组传感器采集桥梁的健康状态信息,每组传感器包括位移、速度和加速度信息。桥梁健康状态特征信息,单个样本尺寸为250 000×3×12(时间长度*特征通道数*传感器组数量),按照《公路桥涵养护规范》(JTG H11-2004)将桥梁健康与桥梁损坏共有5个等级(良好、较好、较差、坏、危险),每个等级2 000个样本,共有10 000个样本。桥梁强度评定标准如表3所示。
表3 桥梁强度评定标准
式中,R
为按标准荷载计算的抗力值,R
为结构构件的实际抗力值,R
为平均抗力值。将上述单个样本平均划分为500段,则每段时间长度为500,10 000个样本得到5 000 000个500×3×12(时间长度*特征通道数*传感器组数量)桥梁健康状态信号样本,同时所有传感器的特征串联起来得到大小为500×36(时间长度*总特征通道数)的桥梁健康特征信息。
2.4.2 桥梁健康状态识别网络
桥梁健康状态识别网络层由1个移位卷积层、1个全局平均池化层和1个softmax激活层组成。桥梁健康深度特征信息首先经过逐点元素卷积,然后通过全局平均池化作用,最后通过softmax激活函数处理,输出桥梁健康状态的预测结果。其网络结构如图7所示。
图7 桥梁健康状态识别网络结构
桥梁健康深度特征信息大小为16×128,经3×1×5(卷积核大小×卷积核通道数×卷积核个数)大小,步长为1的卷积操作后,输出特征图大小为16×5,再经过全局平均池化,最终输出的大小为5,再经softmax激活层最终输出桥梁健康状态预测,即实现桥梁健康状态的多分类预测。
2.4.3 移位卷积层
移位卷积层具体结构如图8所示,首先对输入张量进行移位操作,用来重新分配空间信息,然后进行逐点卷积处理,实现跨通道混合信息。其中,逐点卷积之前有批量归一化和非线性激活函数(ReLU)的作用。当输入输出形状不一样时,对输入进行平均池化与卷积操作,通过残差连接的方式实现输入与输出的特征信息融合。
图8 移位卷积层网络结构
通过移位操作和逐点卷积代替了常规的空间卷积。其中,移位操作实现了无参数操作,达到网络轻量化的目的。
输入数据首先经过移位操作,移位操作通过将卷积核构造为移位矩阵,对输入数据不同通道进行不同方向的数据移位。
设输入数据为F
,G
为F
经过移位卷积后的输出数据,移位操作如公式(3)所示:(3)
其中:j
,m
分别为数据沿着帧数轴和通道轴的地址索引,K
为移位卷积核,其内部定义值如式(4)所示:(4)
在式(4)中,在移位卷积核中指定某一位置的值为1,其它位置皆为0,经过卷积后相当于将原通道进行了平移。
3 软件仿真测试
3.1 硬件监测系统布设
在太原龙城大桥上选取长度约60 m的测试区域,每隔10 m布设如图9所示的硬件监测系统。由于监测桥梁的每个节点处需要布设大量的传感器,图中硬件监测系统的布设仅为其中一处的布设情况,在进行现场试验时,硬件监测系统采用胶合的方式安装到被测桥梁的桥面上,设置硬件监测系统的采样率为1 MHz,采集时间为2 s。
图9 实验现场
3.2 软件仿真测试步骤
软件实际测试步骤如图10所示。
1) 填写合适的IP地址和端口号,勾选“TCP模式”,创建一个TCP服务器,开启硬件监测系统电源,等待硬件监测系统与软件的连接,连接成功后如图11所示;
图10 软件测试流程
图11 监测系统控制主界面
2) 勾选所需测试的客户端,同时勾选合适的采样率和采样时间,点击控制主界面中的“模式配置”按钮,软件将下发指令配置采样率和采样时间;
3) 点击“开始采集”按钮等待硬件监测系统对桥梁健康监测所需的加速度数据、应变数据、北斗定位数据,以及温湿度数据进行采集。
4) 分别点击“数据回传”、“应变片”、“定位信息”和“温湿度”按钮分别对步骤3)中采集到的数据进行回传,回传过程中会有进度条显示,点击“保存数据”按钮选择合适的路径和数据格式保存数据。
5) 点击“综合参数采集”按钮,可一次性执行步骤3)、4),节省操作步骤。
6) 选择“监测时间(小时)”的下拉框,等待相应的时间后,即可执行步骤3)、4),同时达到相应时间后,该步骤可自动重复进行。经过这一步骤的操作便可达到定时监测的目的,方便对桥梁进行长时间的监测。
3.3 软件仿真结果分析
根据3.2中的测试步骤,对软件进行实际测试。在测试过程中软件运行稳定,与硬件监测系统配合,使用方便且灵活,初步达到了软件设计的要求。
点击“显示定位”按钮,根据不同的客户端IP地址对保存的北斗定位数据进行拆分,得到每个节点的经度、纬度、UTC时间和日期,并将这些数据在节点定位页面的表格中显示;同时调用百度地图api将经纬度转换为地图中的坐标点,并标记在地图中。地图中可以直观地看到实际布设的硬件监测系统的位置和预设位置一致。北斗定位显示界面如图12所示。
图12 北斗定位信息显示
经过数据处理模块,对硬件监测系统采集到的加速度和应变的数据进行计算处理,依据公式(1)、(2)计算得到测试区域的桥梁挠度,对其绘制波形,如图13(a)所示;提取处测试区域桥梁的主频率,如图13(b)所示;之后将经过预处理的数据导入健康诊断模块进行训练,得到训练的精度和损失度曲线如图14所示,可以看出训练精度达到70%左右,损失曲线稳定在0.5左右。将训练好的网络模型保存后,在该桥梁上不同位置处重新布设一组测试区域,之后重复上述测试流程中的步骤(3)、(4),并将采集到的数据重新预处理,导入训练好的模型中测试,得到该桥梁的健康诊断结果,如图15所示。
图13 频率和位移数据显示
图14 训练精度和损失曲线
图15 桥梁健康诊断结果显示
在实际测试过程中也发现了一些设计不足的地方,如硬件监测系统采用的是WIFI+5G的方式组成超远程通信链路,但是5G目前为止没有做到全覆盖,故该硬件监测系统的使用会受到限制;软件连接大量了客户端后,通信链路会在周围环境条件复杂的时候存在拥堵的情况;后台自动保存使用日志时会存在卡顿的现象;软件在调用健康诊断模块时需要进行大量的计算,因此也会存在卡顿的情况健康诊断模块的训练精度和损失度也存在优化的空间。
4 结束语
本文设计了桥梁远程结构综合参数获取与智能评估软件,通过与硬件监测系统的结合,完成了桥梁健康参数的获取和智能评估的需求。在保证软件性能和功能的同时,可以同时监测桥梁上布设的多个硬件监测系统,获取监测系统采集到的数据、分析数据并显示,同时依据软件中的健康诊断模块得到当前测试桥梁的健康状况。软件解决了传统监测和健康评估过程耗时的问题。最终实验证明,软件控制界面友好、易操作、功能完善,具有参数获取难度低、精度高、健康评估准确的优势,解决了长期存在于老旧桥梁监测中周期长、效率低、健康评估难的问题,为桥梁的维修人员提供了参考的价值,具有实际意义。