面向船舶结构健康监测的数据采集与处理系统(一)系统架构

世界贸易快速发展起始于航海时代,而船舶作为重要的水上交通工具,有
其装载量大,运费低廉等优势。但船舶在运营过程中出现的某些结构处应力值
过大问题往往会给运营部门造成重大的损失,甚至造成大量的人员伤亡和严重
的环境污染,因此实时掌握船舶的监测点应力状况,跟踪船舶各个重要监测点
的应力信息将会提高船舶的运营安全,避免因船体结构的损坏而产生重大的经
济损失。
数据采集与处理系统中上位机采用 C/S 架构,下位机采用 B/S 架构,共分
为四个部分,分别是传感器、解调仪、下位机、上位机,下位机能够做到系统
的所有功能,上位机只实现系统的部分功能,包括应力、应变查询等功能的显
示。上位机和下位机之间的数据通讯通过 TCP/IP 协议实现,而解调仪与下位机
之间的通讯则通过 socket 实现。
2.1 需求分析
本系统中需求分析主要包括功能需求和非功能需求,其中系统需要实现什
么功能是功能需求的要讲述的内容,而保证软件的可靠、稳定则是非功能需求
要考虑的问题。目的是为系统的功能需求提供保证。
2.1.1 功能需求
根据船厂的具体要求,系统的数据采集依靠光纤光栅传感器,通过一定的
采样频率将采集到的数据传送到光纤解调器进行处理,解调仪则将光纤光栅传
感器采集的数据实时调制,原理是将光纤光栅传感器采集的光信号转变成传感
器安装位置应变的大小,再通过复合材料实验室提供的力学知识将应变信息转
变成应力信息。每个监测点包括四个传感器,其中 1 、 2 、 3 、号是应变传感器,
4 号是温度补偿传感器,传感器部署方式如图 2-1 所示。因为应力和温度的改变
都能够引起光纤光栅传感器的应变变化,而在本系统中只需要考虑应力引起的
光波改变即可,因此在计算监测点应力时要将监测点温度引起的应变剔除掉。
应变、应力的大小是我们需要进行处理和存储的数据。系统共有 24 个位置需要
进行应力监测,每个位置有 4 个传感器,因此总共有 96 个传感器,当然,为了
系统的可扩展性,系统有增加监测点的功能。为了节省系统的存储空间,除了
需要将系统数据库中的数据定期导出到系统之外,还应使系统具备采集数据频
率可变的功能,因为当船舶在行驶过程中如果海面风平浪静,各个监测点的应
力变化情况会很小,此时需要的采样频率就会低一些,船厂要求的采样频率在
10Hz~100Hz 之间。

各个传感器应变的大小通过光纤光栅解调器输出之后,先将数据进行诊断,
判断传感器是否在正常工作,当传感器发生故障时,系统就采集不到原始数据,
在本系统中,传感器采集的数据是基础性工作,为后续所有工作做支撑,为了
确保传感器安全可用,可以在重要监测点位置部署双路光纤。当传感器没有发
生故障时,将某一位置的传感器数据进行计算,得出该点的应力大小,并将数
据与标准判据进行对比,查看相应船舶结构处的应力大小是否出现过大等情况,
如果应力超过标准判据,进行过载报警,并将实时监测到的应力数据以及该监
测点的正常应力范围显示在界面上。系统还应该具有历史数据显示的功能,当
船舶的运行人员要了解过去一段时间的应力情况,或者是有相应船舶需要设计
建造时对以往船舶进行参考时,系统应该能够将历史数据清晰的显示出来。
在系统运行以前,或者是有监测点需要添加时就要对监测点及传感器的信
息进行配置。监测点配置主要包括监测点编号、各个监测点能够承受的应力范
围、应力的初始值、监测点坐标位置、监测点所在通道编号以及监测点位置信
息描述等,传感器配置包括传感器的 ID 、初始波长、计算监测点应力时所需要
的参数以及传感器的位置信息等。
下位机是整个系统的核心部位,本系统将全部功能安装在下位机上,下位
机对数据做处理及存储工作,处理主要分为以下几个方面。首先下位机通过网
络与解调仪实现连接,得到的是传感器的应变信息,将得到的应变数据与实际
传感器位置相对应,每个传感器都有一个固定的 ID 和中心波长,传感器的 ID
命名方法是"通道编号 + 监测点编号 + 监测点内部编号 + 中心波长 " ,传感器采集
的数据固定在以中心波长为中心的范围之内,每个传感器采集的数据都不会超
过自己的中心范围,在同一个通道的传感器因为中心波长不同,进而不会造成
不同传感器额定应变范围的交集,通过编程使得监测点内部的四个传感器应变
数据转变成应力数据,对实时的应力数据进行判断,通过得到的应力值与每个
监测点标准应力范围想对比,判断监测点实时应力是否超过该监测点的标准应
力值,报警分为几个级别,实时应力的不同范围表示报警的不同等级,通过不
同的级别提示系统运行人员当前船体结构的危险程度,而且报警要有默认处理
方式,方便运行人员操作。于此同时,将得到的应变及应力数据传送给示波器,
通过示波器的显示使得系统运行人员能够直观的了解到各个传感器和监测点的
应变及应力大小,当要进行实时数据显示时,系统将传感器采集到的数据经过
处理之后直接发送给示波器显示,如果要显示的是历史数据,先要判断要显示
时间范围内的数据是否在系统的数据库中,如果不在则先要将数据从系统外部
导入到系统数据库中再进行显示,而且显示的方式也会因为要显示的时间段长
度的不同而不同,因为系统的数据量非常大,当选择的时间段非常长时,示波
器会显示不出所有数据,所以要采用包络图的形式进行显示,即当要显示的时
间段大于十分钟时只显示每分钟之内的最大值和最小值,当要显示的时间段小
于十分钟时则将数据都显示出来。最后,数据的存储是重量级工作,系统要记
录各个传感器的应变以及监测点的应力信息,所以,数据量非常大,因此要定
期的将系统中的数据导出到系统外部磁盘,使得系统有足够的空间接受传感器
采集的数据,系统设定当数据库中的数据达到系统磁盘存储量的 80% 时则给出
备份提示,用户可以通过界面选择备份路径等信息,将系统数据库中的表导出
到系统外部之后,要将系统数据库中较久远的表删除掉。上位机的功能是方便
于用户查看,不承担全部的功能,只起到显示部分功能的作用,例如历史及实
时数据的查询、报警信息显示和处理等功能。简言之,上位机做到查询和简单
处理的作用,下位机则供系统运行人员操作使用。
界面设计要求简洁、方便,在进入系统时,默认的主界面是一号监测点所
受应力的大小的实时波形图,在左侧有一个选择框,该选择框中包含所有监测
点,在每个监测点中又有一个树形结构,显示出四个传感器,当要对监测点或
者是传感器进行配置时,可以将鼠标放在监测点上选择右键,转到监测点配置
和传感器配置等界面。
2.1.2 非功能需求
非功能需求要考虑到软件的可用性和易用性。其中可靠性、可维护性以及
适应性是系统密不可分几个部分。
( 1 )可靠性是系统在用户错误操作的情况下或者系统出现故障的情况下可
以支持系统恢复,在网络不稳定或者使用过程中异常中断的情况下系统应该有
相应的容错功能,这些都是在非功能需求中要考虑。
( 2 )易用性直接影响到软件的使用体验,因此在软件开发过程中要充分考
虑,包括系统界面的美工、交互式设计等内容,界面要易于操作,不能繁琐复
杂,以用户的角度去考虑软件在使用过程中的人机交互友好性,同时系统中功
能设计不要隐藏的太深,系统的所有功能应在主菜单处显示出来,也就是软件
的易见性要好,而无论是易用性还是易见性,都要做到以用户为中心进行设计,
而软件的可靠性和易用性将会在系统的详细设计及实现的过程中充分考虑。
( 3 )稳定性和可靠性对于监测系统至关重要,为了达到稳定性和可靠性,
系统在完成实现之后要进行压力测试。在硬件部署上传感器布线可以在相应位
置采用双线结构,当一条光纤的传感器发生故障之后可以快速的切换到另一条
光纤上,选用双通路的原则是选择传感器安装困难的监测点,或者比较重要的
监测点。为了提高系统的可靠性,可采用双下位机系统,如果正在运行的下位
机发生故障时可以手动或者自动的切换到另一个下位机上去。系统采用的是
Mysql 数据库,引起具有容量小的特性,因此要定期的将系统数据库中的数据
导出到系统外部磁盘,在将系统数据库中的数据导出到外部磁盘的过程中要保
证读取在 4Mb/s 以上,系统在正常运行时,不能经常性的死机,对数据的处理
要及时高效,为了保证系统的稳定性及可靠性,采取双下位机,正常情况下一
台机器正常工作,另一台机器处于热备份状态,当工作的下位机故障时,手动
将另一台机器接入到系统当中。在系统实现之后将重点测试压力测试,使系统
达到要求的稳定性和可靠性。
2.2 系统总体设计
2.2.1 系统拓扑设计
船舶结构健康监测系统主要由四 部分组成,分别为传感器、解调仪、下位
机、上位机,各个部分各司其职又相互联系。光纤光栅传感器采集各个监测点
的原始数据,在船舶结构处每个监测点有四个传感器,其中前三号是应变传感
器,第四号是温度传感器,这些传感器通过光纤实现连接。解调仪的工作是读
取光纤光栅传感器采集的数据,数据的单位是应变的大小,本系统采用 sm130
型号解调仪,它共有四个通道,但是每个通道可以通过光开关再扩展四个通道,
因此该光纤解调仪可以扩展成 16 个通道,每个通道通过一个光纤连接起来,可
以有若干个传感器,但传感器的个数必须是 4 的整数倍,也就是每个通道应构
成整数个监测点。下位机实现系统的所有功能,本次开发的软件就是安装在下
位机上,下位机与解调仪之间的通讯通过 Socket 通讯实现,通过 TCP/IP 协议
实现了下位机与上位机之间数据的传输,且上位机与下位机之间采用 C/S 架构。
系统的拓扑结构图如图 2-2 所示 :

2.2.2 软件体系结构设计
本系统共分为三层,分别为上位机、下位机以及数据采集系统,其中:
数据采集系统:是系统基础部分,该部分将传感器部署到船体的各个结构
处,采集各个监测点处传感器的实时应变数据,光纤光栅解调仪能够将传感器
部署位置处由应力引起的传感器光波波长的变化采集出来,下位机与解调仪之
间的通讯通过 Socket 通讯实现。
下位机系统:下位机是系统的核心部分,数据的处理、存储、显示等都在
该层实现,首先下位机中的解调仪客户端将光纤光栅解调仪将采集到各个监测
点位置的 4 个传感器应变数据转化成各个监测点的应力数据,之后将传感器的
应变数据和监测点的应力数据分为两路,一部分用于数据的实时显示,并在实
时显示过程中判断此时的数据是否超过标准判据,如果超过标准判据则启动报
警模块进行报警;另一部分则是将数据存储在数据库中,用于后续数据的处理,
当有历史数据需要显示时,通过访问本地数据库获取数据。
上位机系统:上位机实现系统的部分功能,主要是系统的显示功能,例如
历史及实时数据的显示,报警的处理等,其中,当有实时数据进行显示时,上
位机通过 Socket 通讯与下位机进行通讯,将下位机实时显示部分传送到上位机
进行显示,当有历史数据进行显示时,上位机通过远程数据库连接得到下位机
数据库中的历史数据,系统软件体系结构图如图 2-3 所示:

2.2.3 系统功能结构
船舶结构健康检测系统的系统由四部分组成,分别为数据的采集、系统配
置、数据的显示、数据处理、数据挖掘等部分,其中数据的采集则是下位机调
用光纤光栅解调仪提供的 DLL 文件,与解调仪建立连接,是本系统的基础,在
数据采集之前应该保证每个传感器采集的数据都是在正常的,即传感器是可用
的。数据存储时要求传感器采集的数据的频率是可变的,船厂要求的数据采集
频率在 10~100HZ 之间。数据的显示包括历史数据显示、实时数据显示,包括
每个监测点的应力显示,也包括每个传感器的应变数据显示。数据挖掘是本系
统的理论研究部分,通过数据挖掘技术对数据进行分析,对每个监测点的应力
大小以及频率分别分析,通过分析得来的数据与该监测点的状态对比,当有类
似船舶建造时,可以起到指导的作用。系统功能结构图如图 2-4 所示:

相关推荐
Crazy Struggle3 天前
C# 开发的数据采集及云端监控系统
.net·wpf·数据采集·云监控
qingyunliushuiyu2 个月前
企业如何使用数据分析管理系统
数据分析·数据采集·bi·数据分析系统·数据分析管理系统
亿牛云爬虫专家2 个月前
优化数据的抓取规则:减少无效请求
python·数据采集·多线程·爬虫代理·数据抓取·代理ip·房价
亿牛云爬虫专家2 个月前
如何通过subprocess在数据采集中执行外部命令 —以微博为例
爬虫·python·数据采集·多线程·代理ip·subprocess·微博
程序者王大川2 个月前
【物联网】时序数据库InfluxDB解析及1.x版本与2.x版本区别详解
java·数据库·物联网·数据采集·时序数据库·数据·工业互联网平台
康谋自动驾驶2 个月前
康谋分享 | 汽车仿真与AI的结合应用
自动驾驶·汽车·数据采集·ad·仿真
亿牛云爬虫专家2 个月前
WebDriver与Chrome DevTools Protocol:如何在浏览器自动化中提升效率
爬虫·自动化·数据采集·chrome devtools·爬虫代理·webdriver·代理ip
亿牛云爬虫专家3 个月前
HttpClient在ASP.NET Core中的最佳实践:实现高效的HTTP请求
后端·http·asp.net·数据采集·爬虫代理·httpclient·代理ip
東方神山3 个月前
【NI-DAQmx入门】LabVIEW数据采集基础应用程序框架
数据采集·labview·状态机·ni-daqmx
CharonXA4 个月前
用Python实现亚马逊Amazon高性能爬虫采集销量信息
开发语言·爬虫·python·网络爬虫·数据采集·亚马逊爬虫工具·亚马逊数据抓取