沉船打捞集成监测及虚拟仿真系统设计

2018-03-01 02:46,,,,,,,
船海工程 2018年1期
关键词:沉船虚拟现实数据库

,,,,,,,

(大连海事大学 交通运输装备与海洋工程学院,辽宁 大连 116026)

2001年荷兰MAMMOET公司和SMIT公司联手合作使用8条工程船打捞俄罗斯“库尔斯克”号核潜艇,在打捞过程中,每根提升钢缆的实时拉力、总提升力、沉船水下深度、姿态,以及驳船的姿态、水下视频信号等数据都集中显示在监测平台上,实现了打捞过程的集成监测[1- 2]。国内2007年在“南海一号”古沉船打捞过程中,利用姿态传感器和水下超短基线定位系统进行沉船的定位和姿态监测[3];2008年在“畅通”轮打捞过程中,利用多种传感器采集每根缆绳的提升力、提升速度、提升位移信息,并实时显示在人机界面上[4],实现了对打捞过程中的部分信息监测,但没有形成有效的集成监测平台。

为了全面获取打捞监测数据,及时掌握沉船动态,提高决策效率,设计沉船打捞集成监测及虚拟仿真系统。将多种信息(传感器数据及网络气象与海洋环境数据)进行汇总,实现多种数据的集成显示,建立沉船打捞虚拟仿真平台,通过传感器获取的数据实时驱动虚拟模型,逼真再现打捞过程,实现打捞过程的实时可视化。

1 沉船打捞过程监测

打捞工程通常采用浮力打捞与机械打捞相结合的方法,即利用外置气囊、浮筒、舱室充气等方式增加沉船浮力,通过机械设备提升围绕沉船的千斤使其脱离海底[5]。在沉船起浮过程中,需要监测沉船与打捞工程船的位姿、每根千斤的受力情况,以及浮力的变化。

在沉船打捞过程中,潜水员需要多次进行水下探摸工作,根据工程进展,进行水下切割,开沟、船底穿千斤等辅助工作[6]。为保障潜水员在水下安全工作,水流速度不能超过0.6 m/s。海水流速变化与潮汐密切相关,因此需要提前了解工作海区的潮汐时间,时刻监测海水流速变化。

沉船打捞现场的气象与海洋环境对打捞作业的安全进行具有至关重要的作用,因此需要监测工作海区的浪高、流速、天气、风向、能见度等信息。

在以往的数据实时传输技术中,socket方式是典型的C/S数据交互模式,服务器与客户端之间根据约定的传输协议通过端口或IP地址进行信息交互。这种传输方式安全性高,通用性强,支持.net架构及java、python等环境。而两个系统可以通过同一数据库进行数据的查询、添加、删除等操作。这种数据传输方式交互更加简单灵活,数据库提供相关的数据接口。为实现虚拟仿真的实时可视化需求,本文通过在一个系统中集成socket方式与数据库共享机制两种方式,解决了数据采集的实时传输难题。

2 集成监测及虚拟仿真系统设计

2.1 沉船打捞集成监测及虚拟仿真系统总体方案

沉船打捞集成监测及虚拟仿真系统总体设计方案如图1所示,整套系统由3个部分组成:多通道数据采集系统、基于多传感器的数据集成监控系统和基于虚拟现实的沉船打捞可视化系统。

图1 沉船打捞集成监测及虚拟仿真系统总体方案图

由于打捞监测设备的数据采集与存储方式不同,没有统一的数据标准[7],因此,需要建立一套多通道数据采集系统来获取沉船、打捞工程船、提升力,以及海洋环境气象等信息。数据采集系统技术方案如图2所示。本系统选用西门子S7-200 smart PLC作为接收介质,通过模数转换与串口通信方式获取各终端传感器信息。利用Python语言编写网络爬虫,将国家海洋环境预报中心和国家海洋气象局预测的浪高、流速、天气、风向、能见度等信息实时抓取并保存到数据库中。

图2 多通道数据采集系统技术方案

基于多传感器的数据集成监控系统依托组态王软件进行设计。组态王(Kingview)软件可以对工业自动化系统进行监视、控制、管理、集成和数据保存,通过组态王人机交互界面可以实时显示打捞提升力、提升位移、沉船及打捞驳船位置和姿态、现场环境、水文要素、水下视频信号等监测信息。

基于虚拟现实的沉船打捞可视化系统依托Virtools软件进行设计,Virtools5.0是全球著名的虚拟现实开发软件,可以方便地创建虚拟现实场景,并且支持大多数行业标准的VR设备和显示器[8- 9],在3D互动方面技术强大。基于虚拟现实的沉船打捞可视化系统通过Virtools Dev虚拟现实平台设计打捞虚拟场景,利用Virtools Server与MS Access数据库连接,动态进行数据交换[10],利用监测的数据驱动虚拟模型运动,并将程序打包成exe格式进行产品发布,系统设计的部分沉船打捞虚拟场景见图3。

图3 沉船打捞虚拟场景

2.2 数据采集与集成

打捞监测数据繁多,数据传输与储存方式也各不相同,针对各种监测数据,需要采用相应的数据采集方法。

2.2.1 PLC编程

打捞监测过程所用的压力、温度、位移、姿态等传感器监测的数据采用PLC进行采集。远距离、高精度的监测设备需要从国外引进,往往都是以数字量形式传输,利用PLC串口通信功能,设置数据传输端口、通讯协议、波特率、储存数据位、奇偶校验来获取数据。近距离、单功能的监测数据以模拟量电信号的形式传输,PLC提供的A/D模块利用线性对应的原理将模拟量数据转换成可读的数字量并储存在PLC相应的地址中。由于读取数据繁多,需要在PLC中设计循环采集程序,编程逻辑见图4。

图4 数据采集程序逻辑

2.2.2 网络爬虫

为了获取沉船打捞区域的气象与海洋环境预报信息,利用Python语言编写网络爬虫程序[11],实时抓取浪高、流速、天气、风向、能见度等预报信息,并储存到数据库中。采用Python语言编写程序,通过正则表达式抓取固定URL地址上的信息,抓取的流程见图5,其关键代码如下。

if __name__==‘__main__’:

dt = [‘0600’,‘1200’,‘1800’,‘2400’] //设置抓取时间

while 1:

if strftime(“%H%M”) in dt:

page =1

url=‘http://www.nmefc.gov.cn/nr/jhhyhjyb.aspx?idx=1’+str(page) //输入爬取URL

crawl=crawl1()

content=crawl.getHtml(url) //获取网页中相关的预报数据信息

table=crawl.creatTable(‘bohai’) //创建表格

crawl.deleteData(table,“渤海”) //删除表格数据

items=crawl.getContent(content)

for item in items:

insertname=item[1],

if insertname[0] == u“渤海”:

crawl.inserttable(table,insertname,) //插入表中数据

sleep(60)

图5 抓取网页信息流程

2.2.3 整合外部数据库资源

在沉船打捞过程中,有的监测对象有专门的数据采集与保存方式,这些数据分散在不同的数据库(Oracle、SQL Server、MySQL、Access等)中,因此,需要通过整合外部的数据库资源,才能达到全方位、多角度地监测打捞过程。

2.3 数据库接口设计

组态王软件通过以太网方式与PLC进行数据传输,利用自身提供数据库访问功能(SQL),可以实现组态王和其他外部数据库(通过ODBC接口访问)进行数据传输,达到自动化集成入库的目的。本系统以MS Access作为外部集成数据库。

组态王软件提供SQL访问管理器和SQL连接函数实现与Ms Access数据库通信,利用SQL管理器新建表格模板和记录体,表格模板定义表格结构,信息储存在SQL.DEF文件中;记录体定义连接使数据库表格中变量与组态王中变量相关联,联系储存在BIND.DEF文件中[12]。组态王中的命令都是靠事件触发执行的,为了提高程序效率,减轻后台语言压力,利用画面命令语言设计组态王与数据库相连。当组态王画面显示时,系统自动连接MS Access集成数据库中,并进行数据的记录。关键程序代码如下所示:

SQLConnect(DeviceID,“dsn=mine;uid=;pwd=”); //连接指定数据库,DeviceID为内存整型变量,表示数据连接句柄;dsn指ODBC数据源,命名为mine;用户名及密码定义为无

SQLCreateTable(DeviceID,“WreckSalvage”,“沉船角度”); //在数据库中创建表格,数据库名为WreckSalvage,表格模板为沉船角度

SQLInsert(DeviceID,“WreckSalvage”,“沉船角度”); //在连接的表格中插入一个新记录,数据库名WreckSalvage,记录体为沉船角度

2.4 虚拟场景再现

Virtools虚拟现实软件提供多种方式与数据库连接,本文利用Virtools自带插件Virtools Server进行交互设计。这种方法利用ODBC接口实现与通用数据库的连接,技术成熟,传输稳定,是一种稳健的数据获取方式[13- 14]。利用这种方式,可以实时读取数据库中打捞要素值,利用数据驱动虚拟模型运动,达到实时可视化仿真的目的。

在连接数据之前,需要在Virtools Server Controller界面中设置与Virtools Server Database Module连接,保持Server status为Running。利用Virtools Building blocks编程,使用系统自带的BB模块,在Virtools Dev中编辑Level Script,系统程序见图6。

在系统运行过程中,打捞数据的采集、集成、储存入库都是实时进行的,为了达到可视化仿真的同步性,在程序设计时,数据读取速度要大于组态王中数据保存速度。利用Virtools server循环读取数据时,每次都需要从初始值遍历每一组数据,而随着系统运行时间的增加,数据库中的数据越来越多,导致系统读取时间增加,实时性达不到要求。为解决上述问题,利用BB模块设置判断语句,当数据超过系统定义上限时,会自动进行数据删除。数据采集流程见图7。

图6 数据读取程序

图7 数据采集流程

3 试验验证

为了验证系统工作的准确性与稳定性,搭建沉船打捞提升平台。试验台采用液压驱动沉船打捞,通过4个液压缸提升沉船模型,利用PLC控制系统运行,通过多种传感器从各个终端采集打捞过程中的要素值,信息显示界面可以显示船舶的纵倾角、横倾角、环境温度、提升力及船舶位置等信息。沉船打捞集成监测系统界面和实验所用设备见图8所示。

图8 沉船打捞集成监测系统实验台

系统测试时沉船初始状态为横倾90°平躺在海底,通过4个液压缸对沉船进行板正并提升出水,横倾角、纵倾角与艏向角随时间的变化见图9。

在系统测试过程中,多终端监测信息采集与集成显示、数据集成入库均与设计相符,达到了预期的目的;虚拟仿真系统直观地显示打捞过程中沉船与打捞工程船的状态,利用碰撞检测技术增强虚拟场景的真实感,沉浸性强。

图9 角度随时间变化

系统运行过程中,实时性还存在不足,虚拟场景相较于试验台中沉船的运动存在一定的滞后性,但在沉船打捞工程中,沉船板正起浮是一个缓慢的过程,对虚拟仿真的实时性要求不高,因此不影响系统在实际工程中的应用。

[1] 关新宇.打捞“库尔斯克号”核潜艇[J].建设机械技术与管理,2005,18(1):37- 39.

[2] International Salvage Team Brings Home the Kursk Submarine Using a Simulation Developed in Simulink [EB/OL].http://www.mathworks.com, 2015- 10- 12.

[3] 隋海琛,杨鲲,张彦昌,等.“南海一号”打捞过程中的水下定位和姿态监测[J].水道港口,2009(2):139- 142.

[4] 李兴奎,吴志勇,戴义平,等.基于液压同步牵引的沉船打捞技术[J].建筑机械化,2010,31(增刊):53- 57.

[5] HAUGEN F. Control of a buoyancy- based pilot underwater lifting body[J]. Modeling,identification and Control,2010,31(10):67- 77.

[6] 弓永军,张增猛.打捞工程[M].大连:大连海事大学出版社,2012.

[7] 何朝阳,巨能攀,黄健.地质灾害监测数据集成系统设计及实现[J].工程地质学报,2014,22(3):405- 411.

[8] LIU Qiang. Design of interavtive 3D exhibition system based on Virtools [J]. International Journal of digital content technology and its applications, 2012, 6(23): 201- 207.

[9] Mustafa Agil Muhamad Balbed, Nazrita Ibrahim, Azmi Mobd Yusof. Implementation of virtual environment using VIRTOOLS[C].Proceeding Computer Graphics, Imaging and Visualisation, Modern Techniques and Applications, 2008:101- 106.

[10] 张悦,孙枫,郑志刚.Virtools连接数据库的多种方式设计与实现[J].计算机仿真,2016,33(7):423- 425.

[11] 王冰,王世明.组态王相关数据库研究[J].计算机工程与设计,2008,29(4):1025- 1027.

[12] 王大伟.基于Python的Web API自动化测试方法研究[J].电子科学技术,2015,2(5):573- 581.

[13] KHADHRAOUI A, BEJI L, OTMANE S, et al. Stabilizing control and human scale simulation of a submarine ROV navigation[J]. Ocean engineering, 2016,114:66- 78.

[14] 闫海峰.液压支架虚拟监控关键技术研究[D].徐州:中国矿业大学,2011.

猜你喜欢
沉船虚拟现实数据库
沉船的启示
数据库
论中国与东盟国家合作保护古沉船——以海上丝绸之路沿线古沉船为例
虚拟现实技术向科幻小说借灵感
数据库
海底沉船
数据库
数据库
虚拟现实炫酷来袭走出实验室坎坷漫长
虚拟现实技术不能根本改变新闻