基于LabVIEW的桥梁监测系统设计与实现

韩艺坤 李富年 翁顺 颜永逸 周恒颖
摘 要: 桥梁结构监测技术能有效地保证桥梁的安全运营,保障人民群众的生命财产安全。为了满足桥梁结构的远程数据监测需要,实现桥梁监测的网络化,该系统在美国桥梁诊断公司(BDI)的桥梁结构测试系统的基础上加以改进,将无线网络技术、虚拟仪器技术和桥梁结构监测技术与之结合在一起,并以LabVIEW作为软件开发平台研究并设计了一套无线数据传输解析存储模块,实现了桥梁传感器数据的无线传输与存储,具有较强的适应性和稳定性,为中小型跨径桥梁的监测提供可行的解决方案。
关键词: LabVIEW; 桥梁监测; 无线传输; BDI
中图分类号: TN911?34; TP393 文献标识码: A 文章编号: 1004?373X(2017)20?0169?04
Abstract: The bridge structure monitoring technology can ensure the safe operation of bridge, and protect life and property safety of the masses. To meet the need of remote data monitoring for the bridge structure and realize the cyberization of bridge monitoring, the system is improved on the basis of the bridge structure testing system of Bridge Diagnostics Inc. (BDI), and a set of wireless data transmission, analysis and memory module is studied and designed, in which the LabVIEW is regarded as the development platform, and the wireless network technology, virtual instrument technology and bridge structure monitoring technology are combined. The module can realize the wireless transmission and storage of bridge sensor date. The system has strong adaptability and high stability, and provides a feasible solution for the monitoring of small?and medium?size bridge.
Keywords: LabVIEW; bridge monitoring; wireless transmission; BDI
0 引 言
近年我国桥梁安全事故频发,所引起的损失惨重,已经引起社会的广泛关注。其主要原因是桥梁在其设计和施工过程中存在缺陷,以及在服役过程中不可避免地受到设计载荷、环境腐蚀、材料老化等问题,同时一些突发事件(台风、地震、撞击等)也会引起桥梁结构损伤,因此有必要对桥梁结构损伤进行实时监测。目前桥梁结构损伤检测和在线安全监测已成为当前国内外学术界和工程界的热点问题[1?2]。现有的桥梁健康监测系统大多采用有线监测方式,一般采用有线电缆实现传感器数据传输。有线监测系统普遍存在着安装造价高、环境对传输信号的影响较大等缺点。而无线监测系统具有安装方便快捷,对环境适应性强等优势,可有效地克服有线监测的缺点[3]。美国桥梁诊断公司(BDI)的桥梁结构测试系统是经济实用的无线结构测试与评估设备,它通过无线网络传输采集到的数据,有较好的便携性和稳定性,广泛应用于中小型跨径桥梁的监测与评定。BDI软件系统是采用LabVIEW开发的,LabVIEW是目前国际上应用最广的虚拟仪器开发环境之一,主要应用于数据采集 、数据分析、数据显示等领域。与传统程序语言不同,LabVIEW采用强大的图形化语言编程,编程简单方便,界面直观,具有强大的数据可视化分析和仪器控制能力等特点[4?6]。但BDI软件系统较为封闭,无法直接获得其实时传感器数据。因此本系统利用BDI桥梁结构监测系统的硬件系统,并针对BDI软件系统的缺陷,开发了一套基于BDI软件系统的数据采集和转发模块用于完成实时数据转发与存储,以方便本监测系统调用,为桥梁无线监测中的数据传输与存储提出了切实可行的方案。
1 基于BDI的无線桥梁测试系统结构
无线采集测试系统具有低成本、低能耗、高度灵活性、扩展性强等特点,同时省去了在测试桥梁时布线的困难,因此在中小型跨径桥梁的监测与评定过程中使用广泛。BDI桥梁结构测试系统利用双通道无线电基站,构建了一个基于IEEE 802.11g标准的STS无线网络,如图1所示。双通道无线电基站可以同时工作在2.4 GHz和5 GHz两个频段。2.4 GHz频段用于所有传感器节点与服务器端的通信;5.0 GHz频段用于多个基站之间无线通信,支持长距离通信定向天线。
传感器节点STS?Node将采集的信号通过无线STS网络传输到BDI服务器端核心模块(Core)组件。Core将信号解码后,由其专用软件STS?Live显示,其中核心组件Core和显示模块STS?Live均采用LabVIEW编写,如图1所示。传感器采集控制和信号解码都集成在核心模块Core中,为了提供BDI系统与其他监测系统的兼容性,BDI提供了核心模块Core的二次开发接口,方便其他系统无缝接入BDI监测系统。
因此本系统充分利用Core的开发接口,对其进行扩展与改进,在服务端设置数据分析采集软件模块实时读取传感器数据,并存储到相应的数据库,为监测系统提供数据支持,其框图如图2所示。
系统从逻辑结构上分为三层(见图1)。
(1) 传感器数据采集与转发层。主要完成传感器数据采集,将传感器数据转发给服务端的Core程序。
(2) 中心服务系统层。在Core获取到传感器数据后,通过它的数据传输接口,将数据传输给STS?CLIENT,STS?CLIENT在接收到网络数据后将数据解码获取有效数据,通过LabVIEW的波形图表控件显示数据,并将数据实时存入数据库[7?9]。
(3) 用户服务层。通过访问中心数据库获取相关传感器数据,使用Web技术,完成历史数据查询,实时数据监控等功能。
2 无线系统设计方案
2.1 BDI数据传输接口与BDI的通信信息系统
BDI服务器组件Core是系统的控制采集和信号解码的核心模块,可以通过相关指令来完成对数据采集器硬件的控制。客户端程序可以通过TCP/IP协议接入Core组件,对Core组件发送指令,将传感器实时数据重定向到客户端,从而达到控制无线传感器数据的目的[10]。Core与客户端程序之间的数据传输是建立在BDI专用的信息编码格式上的,每一包数据打包方式由BDI通信信息系统规定,传输的数据信息要按照队列元素(Queue Element)的规则打包。当数据在TCP/IP上传输时,队列元素会被重新打包为TCP/IP通信的数据帧格式。其结构如图3所示。
2.1.1 队列元素数据的打包方式
队列元素是一个由Object,Task,Caller,Call back task与data组成的结构体,其结构如图3中有效数据字段所示。为了在网络传输中传送队列元素这种结构体,数据就必须平化为字节数组。在LabVIEW中,将数据从其内存格式转换为一种更适于网络传输的格式。这种更适合网络传输的格式称为平化的字符串数据(Flattened Data)。例如字符串“Task”平化后变为0000 0004 5461 736B(转化为十六进制显示)。
在STS?CLIENT接收到一包数据时要通过一定规则解析数据。数据的平化字符串格式并不对该数据的类型编码,LabVIEW将数据类型信息保存在类型描述符中。“从字符串还原”函数要求将数据类型作为一个输入端接入,以使函数对该字符串正确解码。
2.1.2 传感器的数据属性
传感器数据属性包括:Sensor,传感器编号; DataPointer,数据个数;Data,传感器数据;Group,传感器所在节点;SampleRate,采样频率。系统将这些属性转化为一个数据簇格式,以便用于储存和传输。平化字符串数据解码的LabVIEW代码如图4所示。
2.1.3 TCP/IP数据包格式
在BDI通信系统中数据的长度由传感器采样频率决定,每一个数据包中包含0.5 s的传感器数据,因此数据量为采样频率的[12]。由于不同的采样频率下数据长度不统一,会导致读取TCP/IP数据包时读取字节数是变化的,同时读取TCP/IP数据包可能会存在滞后的问题。如果数据包没有被及时处理,未处理的数据包会存储在缓存中,也就会造成读取缓存中的数据时长度不确定的问题。未知数据包长度时无法正确读取一包数据。因此为了解决这一问题,在每一个TCP/IP数据包的首部插入一段定长的16进制数对数据长度信息编码。TCP/IP数据包首部编码方式结构如图3中的数据编码字段,其编码数据长度为8 B,第1 B为数据长度的CRC?8 MAX校验位,后3 B为数据包的长度,最后4 B为保留位为以后系统扩展备用。读取TCP/IP数据代码如图5所示,首先读取8 B,获取数据包的头编码,再取4 B将其中第1个字节以CRC?8 MAX算法解码比较得到的数值与后3 B的数值是否一致,若不一致丢弃此数据包,若一致读取相应字节长度的TCP/IP数据。
2.2 STS?CLIENT设计与Core的指令功能
STS?CLIENT代替BDI桥梁结构测试系统中的STS?Live,完成数据接收存储与显示功能,具体设计过程与运行步骤如下:
(1) 通过TCP/IP协议建立与Core的通信连接,连接建立完成后首先发送登录指令其中队列元素的Task:CLIENTREGISTER,登录成功后Core开始接收STS?CLIENT发送的其他命令;
(2) 根据队列元素的结构构建指令字符串,首先向Core发送开始测试指令其中队列元素Task:CLIENTCOMMAND,Data:NODE=ALL INITIALIZETEST=LIFELOAD;此指令用于初始化测试,Core收到此指令后将启动传感器扫描,并获取传感器数据。成功获取数据后Core默认将数据转发给STS?Live。
(3) 初始化测试并成功获取数据后STS?CLIENT发送改变数据传输目标指令,用于将发给STS?LIVE的传感器数据改为发给STS?CLIENT,其队列元素的前4项与开始测试指令相同,Data:NODE=ALL;ADDTRACES=Sensors,SensorName#Sensors,SensorName …;SensorName为想要获取的传感器的编码,以“#”隔开。
(4) 解析接受到的传感器数据,通过无线网络获取到的TCP/IP数据包要经过TCP/IP的数据解码(解码方法见2.1.3节)后才能获得有效数据的平化字符串格式,平化字符串数据格式解码(解码方法见2.1.1节与2.1.2节)后获取传感器属性数据,将最终解析后的数据实时显示在波形图表控件上,同时将数据存入设计好的数据库。
2.3 数据存储的方案与数据库的设计
本系统中传感器数据存储采用的数据库平台为SQL Server 2008R2。在LabVIEW平台下利用LabSQL 工具包进行数据库访问。LabSQL是一个免费的、多数据库、跨平台的LabVIEW数据库访问工具包,支持Windows操作系统中任何基于OBDC的数据库,将复杂的底层ADO及SQL操作封装成一系列的LabSQL Vis。同时LabSQL是源代码开放的,用户可以通过简单的程序修改来满足需求。
采集与转发模块的数据库设计如表1所示。
数据存储过程中,将每一包数据(1包数据的时间为0.5 s)中的所有数据组合为一个长字符串存入数据库,这样存储1个传感器1 s的数据只需调用2次数据库,且调用数据库的次数与采样频率无关,很好地解决了系统多次调用数据库的缺陷。
3 系统应用效果验证
服务端STS?CLIENT测试界面如图6所示,系统能够成功获取到相应传感器的实时数据图像,并能对传感器状态的变化做出及时的反应。在启动数据库后数据能实时存入数据库中。
移动端APP界面如图7所示,可以通过Web服务器读取数据库中采集到的实时数据并对数据进行图像显示。测试表明通过数据采集和转发模块,可以实现传感器数据存储,并为其他监测提供强有力的数据支持。
4 结 语
本文根据桥梁无线监测系统的需求,在BDI桥梁结构监测系统的基础上增加了实时数据监测与存储功能,以LabVIEW为软件平台为本系统设计了数据接收与存储模块,完成桥梁结构数据由传感器到数据库的传输。现场的测试实验过程与结果表明该系统操作方便简洁,有较高的精确度和较好的稳定性,能准确获取传感器数据并存入数据库为系统后续应用提供数据支持,适合在中小型桥梁无线监测中使用。
注:本文通讯作者为李富年。
参考文献
[1] 马宏伟,聂振华.桥梁安全监测最新研究进展与思考[J].力学与实践,2015(2):161?170.
[2] 王卫彪.监测与监控技术在桥梁施工中的作用分析[J].交通世界,2016(1):82?83.
[3] 俞姝颖,吴小兵,陈贵海,等.无线传感器网络在桥梁健康监测中的应用[J].软件学报,2015(6):1486?1498.
[4] 陈树学,刘萱.LabVIEW宝典[M].北京:电子工业出版社,2011.
[5] 刘其和.LabVIEW虚拟仪器程序设计与应用[M].北京:化学工业出版社,2011.
[6] 何玉钧,高会生.LabVIEW虚拟仪器设计教程[M].北京:人民邮电出版社,2012.
[7] 何晋,潘书文,朱西平.基于LabVIEW的桥梁监测系统设计与实现[J].成都信息工程学院学报,2015,30(2):177?180.
[8] 王树东,何明,王焕宇.基于LabVIEW的数据采集和存储系统[J].电气自动化,2015(1):99?101.
[9] 沈瑶,金印彬,杨黎晖.浅谈LabVIEW中采集数据的实时存储和显示方法[J].高校实验室工作研究,2016(1):47?49.
[10] 贾照丽,张俊,张少红.基于LabVIEW的远程网络数据采集与分析[J].通信技术,2012(8):62?64.