船舶动力装置系统的数据库技术仿真应用

时间:2022-07-10 06:31:25

船舶动力装置系统的数据库技术仿真应用

摘 要:本文针对船舶动力装置系统仿真模A型的构建,分析了软件之间的接口技术,在此基础上对动力装置系统仿真数据管理平台进行开发,结果表明,本次设计的数据管理平台可以醋精模型通用性的提高,达到向不同计算机上传输仿真结果的目的,基本上实现了公共虚拟平台的应用需要。

关键词:船舶动力装置系统;仿真应用;数据库技术

引言

本文在对Visual C++6.0,Matlab以及SQL Server2000数据库间接口的分析,提出了借助以上三者混合编程下的船舶动力装置系统仿真数据管理平台。在这个平台内,把各个动力装置系统的参数预先储存在数据表中,仿真时在船舶动力装置系统的模型中实现动态仿真。本文在数据库服务器内存入相关结果数据,而且有关数据库客户端的计算机就可以接受该数据服务,并利用通信协议来促进数据传输,为分布形式的可视仿真打下良好基础。

一、船舶动力装置系统仿真模型的构建

本文在建模和仿真中以13000 DWT散货船作为原始,对于建模仿真的设计,首先就是对各个部件的数学模型予以建立,然和对设备模型进行组合,并有机结合全部设备模型,进而对动力装置系统的整体动态性进行研究。

1、增压柴油机准稳态模型

该涡轮形成的扭转可以用如下公式表示:

在上式中,涡轮流量用Gt来表示,Ke指的是涡轮内部气体绝热数值,气体常数则用Re表示。那么增压转速的表达式则为:

在四冲程的柴油机中,扫气流量和吸气流量是进气阀流过的空气量的组成部分。其中,扫气量在计算上比较复杂。不过,一旦得到扫气系数Φs的话,就可以通过Gi=ΦsGij来计算得到;对于柴油机的转速nd而言,可以用如下公式计算:

在上式中,柴油机轴承到离合器半A轴的转动惯量用Id表示,Qms则是摩擦力扭矩,螺旋桨的负荷矩则用Mp表示。

2、减速齿轮模型

可以用nd=npi来表示螺旋桨与柴油机之间的转速关系,二者之间的扭转关系则可以用Qe=Qp/i来表示。其中,螺旋桨的转速为np,螺旋桨上的扭矩则为Qp。

3、组装后的仿真模型

对于上述数学模型,在Simulink或者Matlab中构建各个相对的模块,然后有机组合这些模块,最后就可以完成动力装置系统仿真模型的构建。

二、软件之间的接口

1、数据库访问技术

Visual C++6.0提供了ODBC、DAO、RDO等多种数据库开发工具,以上工具中,ODBC无论是在关系数据连接上还是在开放性都相对最优。除了本机驱动程序外,多数据库还包含针对数据库ODBC的驱动程序。

2、数据库和Matlab的连接

对于数据库和Matlab之间的连接,一般应借助于ODBC或者JDBC Bridge。它可以作为Matlab的组成部分而被自动设置,C语言可以把JDBC进行ODBC APIS的转换,并且传送到指定数据库的驱动程序中。如图1所示,为其实现过程。在Matlab针对数据库的操作中,必须先取得了数据库的句柄,其次才能进行相应的函数操作。

3、Matlab/Simulink和Visual C++6.0的接口操作方案

Matlab引擎作为一组函数,用户通过该组函数能够在应用程序中控制Matlab,也就是将Matlab视为一个计算引擎来运用。对于Visual C++6.0来说,为了连接Matlab,可以借助于engOpen(),engOutputBuffer(),engEvalString(),engPutVariable()等函数来实现二者的连接。另外,Simulink能够用框图形式来表现模型,而且可以对各个模块参数任意修改,并支持借助于Matlab指令形式构建的Simulink模型,在此基础上运行Simulink模型,设定相应的系统参数。还可以在对Simulink模型进行操作过程中应用Matlab/Simulink和Visual C++6.0的接口。

三、动力装置系统仿真数据库管理平台的开发

1、数据库和数据源配置

对于SQL Server 2000数据库,开始“Enterprise Mangager”,并建立名称是“fangzhen”的数据库,数据库内的参数包含冲程、额定转速、气缸直径、汽缸数、中冷器效能系数、活塞形成、喷油量、柴油机轴系转动量、涡轮转子转动量、齿轮减速比例、船体质量、螺旋桨直径等等,在数据表simulink中储存以上数据。应用Windows内的开始按钮并进入到管理工具中,选取并进入到ODBC数据源管理内,数据源选择为SQL Server 2000数据库,在经过SQL Server验证之后,选取“fangzhen”数据库设置成默认数据库,对“测试数据源”进行点击,并显示出测试成功即可。

2、应用Visual C ++来建立用户界面

借助于MFC向导来构建vinsitdatabase的应用程序,以sinmulink来当做数据源,在主对话框界面内加载“开启引擎”、“参数读取”、“仿真运行”、“结果入库”等按钮,并关闭引擎。成员函数则需要对应OnGetParanmeter()、OnStartEngine()、OnInsertData、OnRunSimulink()等,并在编译之后运行。

3、功能的实现

在程序运行后,对“开启程序”、“参数读取”、“仿真运行”、等依次点击,这样该动力装置系统模型就可以在参数读取的基础上实施仿真运算。仿真过程中,转速指令在前10秒内从500r/min增加到600r/min,仿真时间则在10min左右。之后对“结果入库”电机,把各个仿真结果全部保存到数据库表中。

结论

综上所述,在数据管理平台的构建和应用上,本文不仅实现船舶动力装置系统仿真参数由数据库传输到Simulink模型的过程中,还在SQL Server 2000数据库服务器中保存了以上仿真结果。结果表明,本次设计的数据管理平台可以醋精模型通用性的提高,达到向不同计算机上传输仿真结果的目的,基本上实现了公共虚拟平台的应用需要。

参考文献

[1]张维竞.舰船动力装置系统仿真[M].上海:上海交通大学出版社,2010.

[2]张小雪.基于MATLAB的舰船用柴油机性能仿真[D].武汉:华中科技大学,2011.

上一篇:高墩挂篮反力梁法预压施工技术 下一篇:高速铁路耐久性混凝土的配制和施工解析