资源描述
大连海事大学装订线毕 业 论 文基于MATLAB的船舶机舱通风系统仿真摘 要世界造船业进入了数字化阶段。船舶的每个系统都可以进行建模与仿真。船舶机舱是船舶的动力、电力中心,是轮机人员进行管理的场所。要保证机舱内动力及辅助设备的高效运行,并为工作人员提供舒适的工作环境,必须在机舱内建立并维持适宜的环境条件,船舶机舱通风的目的就在于此。目前在生产单位的设计中,船舶都依据经验来设计机舱通风系统以保证适宜的机舱环境。本文主要是基于MATLAB平台,针对船舶通风管道网络进行数字化的仿真。为船舶通风设备的制造与运行提供一个理论的支持与数字化的体现,为船舶机舱通风系统的长期运行和舱室内气压的变化提供理论参考。此次仿真是基于集装箱船的通风管道网络设计的,通过风机系统和各个密闭空间模块的差异对船舶通风管道网络进行划分归类,进而对划分的定、变容风机系统模块子系统进行数字建模与界面仿真,同时对每个子系统下的密闭空间模块进行数字建模与界面仿真,最终达到对通风管道网络的界面化,同时可以实时的控制风机的风量以及各个密闭空间气阀的阀值,从而对舱室的气压进行控制与稳定,并且可以动态的显示气压变化趋势的要求。关键词:排(送)风机;通风管道网络;数值仿真;仿真建模;控制系统ABSTRACTWorld shipbuilding industry has entered a digital phase. Each ships system can be modeling and simulation. Ship engine room is the driving force, power center.It is the engineer who managed the place. To ensure that the cabin power and auxiliary equipment running efficiently and to provide staff with a comfortable working environment, It must be established and maintained in the cabin suitable environmental conditions. It is the ship engine room ventilation purpose . Currently in the design of production units, based on experience to design vessels are mechanical ventilation system in order to ensure the appropriate cabin environment.This article is based on matlab platform for ship ventilation duct networks digital in the simulation. Ventilation equipment for the manufacture and ship operation to provide a theoretical support and reflect the number of sub-oriented, for the ships engine room ventilation system air pressure changes in the long-running and provide a theoretical reference. The simulation is based on the container ship ventilation duct network design, through the fan system and differences between the various modules confined space ventilation ducts on the ship is classified networks, and thus on the division of fixed, variable volume fan system module subsystem for digital modeling and simulation interface, while the confined space under each subsystem modules for digital modeling and simulation interface, and ultimately achieve the ventilation ducts of the network interface, while real-time control fan air flow and various valves valve confined space value, and thus the cabin pressure control and stability, and can dynamically change in air pressure trend display requirements.Key words:exhaust (supply) fan; Ventilation pipeline network; numerical simulation; modeling; control system目 录第1章 绪论11.1 船舶通风系统的概述11.1.1 船舶通风系统的分类11.1.2 船舶通风系统的目的11.2 选题的目的和意义21.3 课题研究的主要任务31.4 课题研究的主要内容3第2章 船舶通风系统建模实现42.1船舶通风系统管道网络42.1.1.通风管道网络图概述42.1.2 风机型号52.1.3 风机系统分类62.1.4 各个工作间模块分类92.2 各个风机系统的数学建模92.2.1轴流式风机的工作原理92.2.2轴流风机的特性92.2.3轴流风机的性能参数102.2.4通风机的相似原理102.2.5克拉伯龙方程式102.2.6风机的数学模型112.3 各个密闭工作空间的数学建模12第3章 船舶通风系统的界面设计与仿真实现133.1仿真软件介绍133.2 仿真界面设计与实现133.2.1通风管道网络界面设计133.2.2密闭空间界面设计143.2.3定容排风机系统模块的仿真实现153.2.4变容排风机系统模块的仿真实现183.2.5密闭空间模块的仿真实现203.3 仿真界面优化设计21第4章 仿真运行结果与分析244.1主仿真界面的运行结果244.2密闭空间仿真界面的运行结果244.3运行结果分析25结论与感悟26参 考 文 献27致 谢28附录1 主要程序源代码2941基于MATLAB的船舶通风系统仿真基于MATLAB的船舶通风系统仿真第1章 绪论1.1 船舶通风系统的概述随着现代航运业的发展,海上交通运输日益繁忙,船舶趋于自动化,安全成为船舶运输永恒的主题。船舶机舱是船舶的动力中枢心脏,是人力资源、环境资、物质资源、管理资源的集合,是轮机人员进行管理的场所。要保证机舱内动力及辅助设备的高效运行,并为工作人员提供舒适的工作环境,必须在机舱内建立并维持适宜的环境条件,船舶机舱通风的目的就在于此。船舶通风系统就是使用机械或者依靠空气自然流通为船舶舱室进行通风换气的管系。通风方式一般分为自然通风和机械通风两类。一般对于大、中型船舶机舱采用机械通风并设置相应的通风管系;对于小型船舶,大多不设机械通风设备,但也利用机舱棚及风斗进行自然通风。1.1.1 船舶通风系统的分类通风方式一般分为自然通风和机械通风两类。自然通风主要是依靠开孔,如门、窗、舱口、通风斗和通风筒等。通风斗和通风筒是一种排气或吸气的专门设备。为了提高自然通风效率,常利用舱室的外壁上对风的一面压力增大,逆风的一面压力降低的原理,把通风斗和通风筒制成各式各样。自然通风系统结构和设备简单,造价低,维护费用少,但因其受风向、相对速度和室内外温度差的影响,工作不稳定,故对要求较高的舱室应用机械通风。机械通风可分为为机械送风和机械排风。机械通风由轴流风机、通风管道、布风器组成。机械通风的优点是通风量可以人为控制,不受外界自然条件的影响,且能对空气进行合理的分配并输送到各个特定处所,故在大、中型船舶上都作为主要的通风方式,还往往和自然通风结合起来使用。1.1.2 船舶通风系统的目的对船用柴油机来说,环境状况是指柴油机运行现场的大气压、环境温度、相对湿度和中冷器冷却介质进口温度。根据 ISO3046/1-1986 规定的无限航区的船舶柴油机的标准环境状况是大气压力 10OkPa,环境温度 318K,相对湿度 60%,中冷器冷却介质的进口温度 305K。对船舶主柴油机来说,其工作环境是指柴油机运行现场的大气压、环境温度、相对湿度和中冷器冷却介质进口温度。工作环境影响着柴油机气缸内的实际空气量,因此随着机舱通风状况的变化,机舱内的气压、温度、湿度都会发生变化,进入气缸内的空气量也随之变化,并对柴油机的工况构成影响。具体来说,过高的机舱内温度会使机舱内空气密度减小,这样柴油机增压器喘振的可能性会大大增大,并且会在一定程度上降低柴油机的推进效率。反之,机舱内低温会使空气的密度增大,最高燃烧压力升高。因此将机舱的温度控制在一定的范围内,对机械设备的正常工作是非常必要的。此外,在船舶机舱中,自动化设备要求的环境温度是:机舱及主控制站 055,安装在有发热部件的柜(箱、台)内的电子设备,在工作过程中应能承受最高 70的温度不会失效。自动化设备对湿度的要求是:温度达到40时,相对湿度为95100%,温度高于 40时,相对湿度为 70%。随着温度的变化,仪表的精度和灵敏度会不同,当环境温度超过仪表的有效温度范围时,有的仪表可能不能正常工作。另一方面,机舱也是轮机管理人员工作的场所,机舱中的温度、湿度以及油气等有害气体的含量构成了机舱的环境条件,空气中的粉尘、有害气体以及高温高湿等都会损害人体的健康。在众多因素中,机舱的温度对工作人员的影响可以说是最大的。从医学观点看,平均在 15-20之间最适宜人们的工作,而实际中由于主柴油机、发电用柴油机以及锅炉等设备的持续散热,机舱中的温度会不断上升并对人体产生危害,这时候就要保证一定的通风量来控制机舱内适宜的温度。综上所述,船舶机舱通风的主要目的就是用以建立并维持机舱内适宜的环境条件(温度、湿度、空气流速、清洁度和空气成份等)以保证柴油机、锅炉燃烧所必须的空气量,同时也是保证机舱内部良好的工作环境,改善轮机人员的劳动和卫生条件。概括起来,机舱通风设备应该实现以下功能:(1)为主机、辅机和锅炉等燃烧设备提供必需的燃烧用空气量;(2)带走设备的散热量,保持机舱内的适当温度。(3)排出机舱内可能的有害气体,保持空气清洁,为机舱内工作人员创造适宜的环境条件。(4)排除可燃气体以防爆炸和火灾。 1.2 选题的目的和意义 此次设计是基于MATLAB的船舶通风系统仿真,是根据某实船上的通风管道网络以及实际的通风机的排量对船上各个舱室的气压变化情况进行数值模拟。此次仿真设计是根据每个风机风量的大小,计算出每单位时间内进入舱室的空气量,以及根据实际需要,可以人为改变舱室进风开关的大小来进行风量调节,从而进行系统控制,以达到所要控制的舱室维持在一个稳定度的气压水平,进而为舱室内的人力资源、环境资源、物质资源、管理资源提供一个高效运转的场所,进而为航运的高效、安全、稳定的运输提供一个舒适安全的环境。1.3 课题研究的主要任务机舱通风系统设计的主要任务就是根据舱内设备的工况确定供风量并根据设备的布置确定各个供风口的大小、型式及布置。一个设计合理的通风系统不仅要满足船舶建造规范对供风量的要求,还要使舱内气流组织合理,舱内温度分布较均匀,避免出现空气流动死角使热量堆积导致局部温度超过规范规定的最高数值。对于己经设计完成并安装到实船的通风系统,一般通过测量风管风压和通风口的风速确定供风量的分布是否达到设计要求。然而这种方法并不能得到整个机舱内的空气的温度场和速度场的分布,所以无法对一个通风系统的完善程度做出精确的判断和评价。若能提前知道通风的气流组织和温度的分布,无疑将为通风设计提供了一个理论依据,并据此来改进通风的不合理状况,且赢得了和船体结构之间协调的时间,缩短设计周期。因此在机舱通风设计完成之后,再模拟出通风效果的各相关参数,再对通风设计加以改进,从而避免了复杂的调试过程,缩短了设计周期。这符合数字化造船的基本要求和核心思想。1.4 课题研究的主要内容本课题研究的主要内容就是根据某实船的通风管道网络以及上海亨远船务有限公司制造的轴流风机的数据参数进行MATLAB界面仿真与数值模拟。根据实际的参数建立以下模型: (1)建立通风管道网络界面。 (2)建立变容送风机系统的数学模型。(3)建立了定容排(送)风机的数学模型。(4)利用MATLAB语言以及GUI编辑界面实现实际的控制操作。(5)建立密闭空间的数学模型,以达到空间内气压实时地变化。第2章 船舶通风系统建模实现2.1船舶通风系统管道网络2.1.1.通风管道网络图概述本课题船舶通风管道网络是根据某实际的集装箱船的通风网络管道的布局建立的。参照实船模型,以及实际经验设计,绘出通风管道网络示意图。如图2.1。该通风管道网络图是集装箱船舶的纵向剖面图,其把实船纵向分为五个独立密闭的空间,其划分是依据实船甲板布局以及通风管网络形态设定的。五个独体的密闭空间从上到下依次被6层货物甲板、2层货物甲板、第二甲板、第三甲板以及最底层的底舱甲板分层。如图2.1,这五个密闭的独立的空间形成了船舶的环境系统,这其中分别包含了人力资源、物质资源、管理资源等。这些资源的高效运行以及合理安排是通过八个送(排)风机为它们提供合理的通风换气的空气来实现的,这样为机器运行、工作人员生存,为船舶运输安全提供合理的保障,进而使得船舶高效地运行。五个独立的密闭空间包含了不同的机器成分和人员安排,所以不同的空间所需要的空气量不同,安排的排、送风机的型号也有差异。其中被2层货物甲板与第二甲板层分隔的空间里有机舱工作间和集控室。由于这里是轮机管理人员的工作场所,机舱中的温度必须保持在最适宜的工作温度,机舱中的有害气体必须及时的排出。所以此空间分别由两台定容的供风机提供生产生活所需要的空气。其中工作间有单独的排风机,以达到为其中的工作人员及时有效的提供生活必须的空气以及保持室内的气压、温度提供有力支持。同时此层有两个集控室,集控室是船舶中自动化设备的主要集中舱室。自动化设备对环境温度要求比较高,同时自动化设备在运行时也有不同程度的发热,根据运行程度的不同,发热的程度也不同。为了让自动化设备达到最佳的运行状态,要安排合理的通风散热设备进行通风换气,进而维持舱室内温度,压强,含氧量的稳定。由第二层甲板和第三层甲板组成的密闭空间主要是发动机和主机增压器组成的。对船用柴油机来说,其运行环境需要运行现场的大气压、环境温度、相对湿度和中冷器冷却介质进口温度等因素维持在一个相对稳定的水平。只有这些温度维持在一个相对稳定的状态,柴油机才能更加稳定的运行,进而为船舶的稳定长期高效的运行提供合理的条件。因为发动机运行需要合理的氧气量、空气压力、介质温度等,这些条件为燃油提供合适的氧气量和燃烧条件,所以此空间安排了两台变容的送风机为燃油燃烧提供通风换气的支持,同时也为此空间的良好运行在一个相对稳定的环境提供保障。第三层甲板与底层甲板组成的空间主要存在有分油机间,分油机是一种离心式沉淀设备,作用是将待分离油中的杂质颗粒和水分分离,基本原理是利用分离盘之间的微小间隙和分油机高速旋转的离心力将杂质颗粒和水分等密度较大的成分分离出去。它为净化燃油提供一个循环利用的平台。它的高效运行也是船舶运行一个必不可少的条件。同时底舱底要保持合适的正压以保证尾轴洞不会因为负压差而进水,为船舶的安全提供保障。同时尾轴有轴强制风机为此层空间的安全提供的更进一步的双保险,也为空间内维持一个相对稳定的状态提供了合理的气压、温度支持。图2.1 船舶通风管道网络图2.1.2 风机型号本课题选用的风机是上海亨远船务有限公司生产的船用的轴流风机。此公司生产的FA系列船用轴流通风机可输送含有盐雾的海洋空气和含有油雾等微腐蚀性空气。通风机适用于军船和民船上的各种舱室通风换气,也适用于局部冷却和降温,还适用于陆上各相关的适当场所。FA系列船用轴流通风机可匹配500HZ,380V或440V船用三相的异步电动机。其风机型号如下表2.1风机的型号表2.1风机的型号风机编号类型个数额定功率(m/min*pa)型号1,2号机舱送风机V.AXIAL23500/2330500/220FA-B-185-13号机舱送风机V.AXIAL13500500FA-B-185-14号机场送风机V.AXIAL13500500FA-B-140-8机舱排风机V.AXIAL21800150FA-B-185-1分油机区送风机V.AXIAL1500600FA-90-5轴强制风机H.AXIAL1500120FA-85-2机舱工作间排风机H.AXIAL120500FA-35-22.1.3 风机系统分类通过风机系统网络可知,其风机系统可大致分为四个部分。分别是如下:(1)左侧定容供风机及其所属管道所连通的集控室、工作间、主机舱上层,主机舱底层和通舱底以及其附属的机舱工作间排风机、轴强制风机。该系统主要由两个风机组成,一个定容供风机和一个机舱排风机。定容供风机为四层甲板舱提供空气量,同时也为集控室、工作间提供需求风量。同时,为了保证工作间的高效运转,单独配置了一个机舱排风机来进行精确的风量控制。系统模块如图2.2 风机系统模块1;(2)变容供风机1及其所属管道所连通的3,4号发电机和主机舱底层。该系统主要由一个变容的供风机配合每个密封舱的自然排风组成。主要是通过可调风量大小的供风机为1,2号发电机以及主机舱底层提供合适的风量,进而为发电机的稳定运行提供条件。系统模块如图2.3 风机系统模块2;(3)变容供风机2及其所属管道所连通的1,2号发电机和分油机间以及附属的分油机区排风机。该系统主要是由两个风机组成,一个变容的供风机和一个定容的排风机。其主要是为1,2号发电机以及分油机工作间提供生产生活所必须的空气,同时为了分油机间的精确的空气排量,特别安置了一个分油机间排风机以提供保障。如图2.4风机系统模块3;(4)右侧定容供风机及其所属管道所连通的集控室、1,2,3号主机增压器、主机舱底层和通舱底;主要是为主机增压器以及集控室提供必备的空气量。为通风换气提供保障。如图2.5风机系统模块4 图2.2 风机系统模块1图2.3 风机系统模块2图2.4 风机系统模块3图2.5 风机系统模块42.1.4 各个工作间模块分类由通风管道网络可以看出,各个密闭的工作间可以分为四类。分别为:(1) 带有工作间排风机的,进风量可调的密闭的工作间模块;(2) 无工作间排风机的,进风量可调的密闭的工作间模块;(3) 有工作间排风机的,进风量不可主动调节的工作间的模块;(4) 整个甲板舱的密闭工作间模块;2.2 各个风机系统的数学建模因为船用风机都是轴流式风机,我们先介绍一下轴流风机的工作原理。2.2.1轴流式风机的工作原理空气沿轴向流动的通风机称为轴流式通风机。一般通风机的结构如图2.6所示,主要由集风器、叶轮、导叶和扩散器等组成。叶轮安装在圆筒形机壳中,电动机与叶轮直接联接。图2.6 轴流通风机结构简图集风器,叶轮,导叶,4扩散由于风机叶轮的叶片具有一定的斜面形状,当叶轮在机壳中高速转动时,使叶轮周围气体一面随叶轮旋转;一面沿轴向推进,气体在通过叶轮时获得能量,压力升高,进入扩散管后一部分轴向气流的动能转变为静压能,最后以一定的压力从扩散管流出。2.2.2轴流风机的特性轴流式通风机一般采用电动机直接传动的传动方式,有些大型的轴流式通风机也可将电动机安装在机壳的外面,采取皮带轮或联轴器传动的方式,且其叶轮的排风侧有的设有固定导叶,可将一部分偏转气流转变为静压能,有助于气流的扩散。轴流式通风机的叶片有各种各样型式,有板型、机翼型等等。叶片从根部到叶稍常采用扭曲形的。有些叶轮的叶片安装角是可以调整的,通过调整叶片安装角可以改变风机的性能参数。2.2.3轴流风机的性能参数风量Q、风压P、转速n、功率N及效率是表示通风机性能的主要参数。(1)风量通风机在单位时间内所输送的气体体积称为风量,又称流量。通常指的是工作状态下的气体量(m3/h或m3/s),而在风机铭牌上有时标出的是标准状态下的风量(Nm3/h或Nm3/s)。(2)风压通风机出口气体全压与进口气体全压之差(或进、出口全压绝对值之和)称为风机的风压,也就是气体进入风机后所升高的压力,其单位为Pa。(3)功率通风机在单位时间内传递给气体的能量称为风机的有效功率Ne,2.2.4通风机的相似原理(1)风压相似换算 (2.1)(2)风量相似换算 (2.2)(3)功率相似换算 (2.3)其中n为风机的转速,D为风机的叶轮半径,空气的密度。2.2.5克拉伯龙方程式 克拉伯龙方程式: (2.4)其中P表示压强、V表示气体体积、n表示物质的量、T表示绝对温度、R表示气体常数。所有气体R值均相同。如果压强、温度和体积都采用国际单位(SI),R=8.314帕米3/摩尔K。如果压强为大气压,体积为升,则R=0.0814大气压升/摩尔K。2.2.6风机的数学模型根据前几节介绍的轴流风机的工作原理,性能参数以及相似原理。再根据方程式。我们可以推导出风机系统的数学模型,进而进行数值仿真。本课题主要由两种风机构成的风机系统,一种是变容风机,一种是定容风机。下面我们依次介绍两种风机的数学模型。首先,这里假设风机的内部的温度与风机周围的温度近似相等。即在T相等的情况下,根据 ,我们可以推到出 (2.5)即在相同的温度下,空气的体积与空气的压强的乘积是一个固定的常数,其中P为风机所产生的气体的压强(Pa),V为风机单位时间内所排出的空气的体积,为外界的空气压强,为相对于外界的空气体积。这样我们就通过可以计算出。我们的目的是是要计算出空气的质量,进而进行压强的计算。有了气体的体积,我们就要找到当前的空气密度,进而求出质量。同样,通过我们可以推到出以下的公式: (2.6)其中m为空气的质量,M空气的摩尔质量(通常为29g/mol)。通过公式(2.6)我们可以推到出以下公式: (2.7) (2.8)然后根据公式(2.7)公式(2.8)我们可以得到外界的空气密度的计算公式: (2.9)通过公式(2.9),再根据空气一大气压下25摄氏度时空气密度是1.29kg/m3,我们可以算出空气在不同温度,不同压强下的空气密度,进而算出了空气的质量。空气的质量算出了,排风机的基本数学模型也就准备好了。然后我们分别介绍定容和变容排风机的数学模型。1.定容排风机所谓定容排风机就是在开启风机后,风机的容量,风机所产生的压强是固定不变的,所以通过公式(2.5)我们可以算出定容风机单位时间内相对于外界的体积与压强,进而算出气体的质量,然后进行数字仿真。2.变容排风机所谓变容排风机就是风机的容量大小是可以根据实际的情况调节的,所以它单位时间内输出的气体体积是不定的,同时它的气体压强,也是不定的。所以,我们只能通过排风机的相似原理对风机进行计算,进而算出变容排风机的单位时间内所排出的气体体积。通过公式(2.1)公式(2.2)我们可以推到出变容风机容量与气压的关系,(由于进行对比的是同一个风机,环境温度相同,所以气体的密度,叶轮的半径都是相同的)推到公式如下: (2.10)通过公式(2.10)我们就可以得到变容排风机单位时间内的压强与气体量,进而通过公式就可以得到单位时间内的气体质量,从而得出变容排风机的数学模型。2.3 各个密闭工作空间的数学建模 各个密闭空间的建模是根据图2.8所绘制的原理进行仿真建模的。图2.7 密闭空间仿真原理图由于从第一章我们可知,密闭空间排风分为自然排风和机械排风,所以影响空间气压的原因就由这两方面组成。可是,由于自然排风的不可控性,本课题没有对自然排风进行仿真研究,在建立模型时对自然排风只是给定了一个初始排风值。本课题主要是对机械排风进行仿真。有原理图可知,密闭空间的气压变化是由于空间内气体质量的变化所引起(在温度恒定的情况下)。所以,仿真的目的是计算出单位时间内密闭空间气体变化量,进而通过PV=m/MRT这个气体方程变形式来计算出密闭空间的气压变化。不同的密闭空间,数学模型不太一样。有排风机的密闭空间气压主要由送风机与排风机的气体质量差决定。无排风机的密闭空间气压由送风机送入的空气质量决定(自然排风影响小,本课题设置初始值影响,不过影响不大)。第3章 船舶通风系统的界面设计与仿真实现3.1仿真软件介绍MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。MATLAB是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。本课题运用到的仿真软件是MATLAB中的GUI图形用户设计界面。在MATLAB强大的函数、矩阵运算支持下进行方针设计可以更加接近实际的情况。此次仿真用到了GUI界面下的控件有Push Button、Static Text、Slider、Toggle Button、Edit Text等控件。Push Button控件是按键控件,是按下就弹起的按键;Static Text是静态的文本框,用来显示不需要更改的数据仿真结果。相对的Edit Text控件是用来显示可以根据实际情况进行更改的仿真数据。Toggle Button控件是按下后不弹起的按键,此次仿真用作为的开关按键。3.2 仿真界面设计与实现3.2.1通风管道网络界面设计根据第一章介绍的某实船的通风网络管道布置,本课题运用MATLAB GUI中所提供的的控件进行模拟仿真。(1)Push Button控件进行风机的仿真,按下按键表示风机开启,再按一次表示风机关闭,同时运用Static Text控件配合显示风机的状态。(2)运用不同颜色的Static Text控件进行通风管道的布置,颜色区分管道是进风还是出风。(3)各个密闭空间运用Push Button仿真,其目的是为了按下按键后可调出该空间的相关参数以及空间内气压的变化。(4)运用Slider控件进行进风量,出风量大小的调节,即开关的仿真。(5)用Toggle Button控件设计系统的总开关,该仿真界面的所有运行程序都是在总开关的控制下进行的。(6)Edit Text控件是设计温度,压强参数,目的是为了与实际的温度压强保持一致,进行更精确的仿真提供参数量。(7)运用Static Text控件设置在甲板密闭空间以显示空间的压强变化。通过以上各个控件的介绍以及每个控件所要模拟的单元,再通过第一章所给出的船舶通风系统的管道网络图,我们可以布置控件进行界面的设计,设计的界面如图3.1。各个控件初始化状态以运行时的界面状态为准。图3.1 船舶通风管道网络仿真界面3.2.2密闭空间界面设计在MATLAB GUI 中运用参数传递的实现形式,把系统运行时间、每秒钟进入室内的气体体积、室内温度、室内压强、相对于外界的气压、进入室内的气体的总质量、每秒钟进入室内的气体质量、原机房气体质量、外界气体密度这些参数显示在密闭空间界面下,使得此界面能充分的体现出密闭空间的室内情况。同时,运用ActiveX Control 控件设计一个压力表,进行显示当前室内的相对气压,进而可以直观的展现室内气压状况,为控制气压提供依据。同时设计了退出按键,为方便的退出界面提供快捷方式。界面设计如图3.2。图3.2 船舶密闭空间仿真界面3.2.3定容排风机系统模块的仿真实现虽然每个风机系统模块是不同的,但是大体软件设计是相通的,所以,本文就针对两个相对复杂的系统进行软件设计实现思路的介绍。首先先针对一个定容的排风机系统进行介绍。这里用了风机系统模块1,进行软件实现介绍。系统模块图如图2.2。仿真界面如图3.3。图3.3 系统模块1仿真界面根据仿真图,实现定容排风机的仿真。仿真代码如下:if(kC=0) if (get(handles.TB7,value)&anjian1C=1) if(anjian1C=1) set(handles.e4,string,3500);%设置定容排风机的容量 totalC1=str2double(r3C)-dC*str2double(r3C);%集控室剩余空气量 cC1 = dC*str2double(r3C);%集控室的空气量 totalC2=totalC1-totalC1*bC;%工作间剩余空气量 cC3=totalC1*bC;%工作间的空气量 totalC3=totalC2-totalC2*dCShang; cC2=totalC2*dCShang;%主机舱上层的空气量 totalC4=totalC3-totalC3*dCDi; cC4=totalC3*dCDi;%通舱底的空气量 totalC5=str2double(r3C)-dC*str2double(r3C)-totalC1*bC-totalC2*dCShang-totalC3*dCDi; %主机舱底层的空气量 set(handles.text74,string,num2str(totalC5); set(handles.text61,string,num2str(cC2); set(handles.text78,string,num2str(cC4); %分别显示出各个数值 Rv=str2double(r3C)*str2double(rC); r11C=Rv/(str2double(r4)*str2double(r2);%每秒钟的进气量时间 r16=str2double(t5)*str2double(t6); r17=str2double(T0)+str2double(t5); r18=r16/r17; R1=num2str(r18);%得到外界密度(可以不变) R2C=r11C*r18;%每秒钟的总质量此代码是依据排风机的型号,我们先设置排风机的容量为3500,并在e4控件中显示,同时设置r3C变量为风机的总容量,dC为集控室开关的开度,从而得到cC1,即空气的通气量。同理可以分别得到工作间、主机舱上层、通舱底以及主机舱底层的空气量并用text控件分别显示出来。然后进行固定数值的计算,如每秒钟的进气量以及外界的温度等。需要注意的是,这里涉及到了供风机的开关操作的功能设计,为了能使风机进行开关操作,本课题设计了一个全局变量global anjian1C,此变量与按键TB7共同管理此供风机的开关操作。下面介绍此风机模块的两个密闭的工作空间,集控室与工作间的功能实现。集控室的代码实现如下:if(k5C=1) %判断排风机开关是否开启 r20C=str2double(T1C)+str2double(t5);%室内温度34机房(变) r19C=R2C*dC;%计算进入室内的气体的质量 R2mC=num2str(r19C);%得到每秒钟进入的气体质量 MC=str2double(101000)*str2double(VC)*str2double(t8)/(str2double(t7)*r20C);%34机房的在一大气压下的空气质量(初始的室内空气质量) m2C=str2double(m34C);%m34很重要! m2C=m2C+r19C-str2double(MzC); m34C=num2str(m2C);m1CP=(MC+str2double(m34C)*str2double(t7)*r20C/(str2double(t8)*str2double(VC);%得到室内的空气压力 m22C=m1CP/str2double(r4); m22Cc=num2str(m22C); set(handles.text71,string,num2str(m22C);%得到相对压力end此代码是该系统模块的集控室的仿真数学模型,首先先获得室内的温度T1C,然后在获得每秒钟进入室内的空气的气体质量,再加上原室内的空气的质量,得到此时室内总的质量。这里应该注意一点,室内总质量是实时更新的,由于有供风机与排风机的影响,所以质量有增有减,所以室内的总质量要设置一个全局变量,即global m34来记忆室内的气体质量。每一个密闭空间都有这个变量来记忆室内的气体质量。通过进而得到室内的气体压力,然后得到气压的相对压力。同理,工作间的仿真模型也是一样的,这里就不一一介绍了。排风机的打开操作仿真完成,同理排风机的关闭仿真也是相同的实现,只是对打开的代码进行了少量的修改,代码实现如下:if(xor(get(handles.TB7,value) , (anjian1C)=1) if(anjian1C=1)set(handles.text61,string,0); set(handles.text78,string,0); set(handles.e4,string,OFF); set(handles.text74,string,0); T0=get(handles.edit10,string); totalC1=str2double(0); totalC2=str2double(0); totalC3=str2double(0); totalC4=str2double(0); totalC5=str2double(0); Rv=str2double(0); R2C=str2double(0); r20C=str2double(T1C)+str2double(t5);%室内温度34机房(变) r19C=R2C*dC;关闭排风机只是把相应的排风机的排风量进行清零,使此系统模块进行相应的无进风量的操作。实现密闭空间零输入的状态。同时,又设立了一个global kC变量,此变量的目的是为了进行各个相关数据的更新以及显示内容的更新操作。更新数据的代码如下:if(kC&anjian1C=1) T1C=get(handles.edit19,string);%更新集控室的温度 T1Workspace=get(handles.edit20,string);%更新工作间的温度 T0=get(handles.edit10,string );%更新外界的温度 r4=get(handles.edit21,string );%更新外界的压强 dC=get(handles.slider9,value);%更新集控室的开关开度 bC=get(handles.slider8,value);%更新工作间的开关开度 dCShang=get(handles.slider7,value);%更新主机舱上层的开关开度 dCDi=get(handles.slider11,value);%更新主机舱通舱底的开关开度 num2C=get(handles.slider9,value); set(handles.text55,String,num2C);%更新开关开度并在text中显示出来 num1C=get(handles.slider8,value); set(handles.text56,String,num1C); num3C=get(handles.slider7,value); set(handles.text63,String,num3C); num4C=get(handles.slider11,value); set(handles.text77,String,num4C); kC=0;%设置更新标志位归零使其继续进行操作 set(handles.text13,string,mtt2); set(handles.text10,string,设置中.);end以上代码实现了各个数据的更新操作使得仿真的数据更能接近实际的情况,并且为仿真接近真实性提供了一个方便的途径。相应的系统模块1的完整代码在附录中可以找到。3.2.4变容排风机系统模块的仿真实现这里我们就一个较为复杂的变容排风机系统模块进行建模仿真实现。由上述提到的公式(2.7)(2.8)(2.9)(2.10)我们可以得到变容的风机公式: (3.1)其中是变容排风机的当前压力,是当前排出的气体量,这是手动进行调节的。是基准压力,是基准的排气量。这样通过公式(3.1)我们就可以算出气体变容的排风机每分钟的排出的气体质量。这里我们用图2.4风机系统模块3 来介绍变容的风机系统。仿真图如图3.4 系统模块3仿真界面。根据仿真图,实现变容排风机的仿真。这里我们只介绍变容排风机与定容排风机的异同之处,对于相同的地方我们就不详细介绍。仿真代码如下:if(kj=0)if (get(handles.TB5,value)&anjian1j=1) if(anjian1j=1) set(handles.text19,string,get(handles.slider5,value);%设置变容排风机的当前容量值 totalj=dj*bj;%算出进入1,2号发电机中的气体量 cj = num2str(totalj); e1j=dj-totalj;%计算出进入分油机中的气体量 dengshu52j=num2str(e1j); r11j=str2double(r)/(str2double(r4)*str2double(r2);%时间 r12j=str2double(r3)*str2double(r3); r13j=r11j/r12j;%公式(10)给出的的计算公式 r16=str2double(t5)*str2double(t6); r17=str2double(T0)+str2double(t5);%计算出外界的温度 r18=r16/r17; R1=num2str(r18); %得到外界密度 r14j=dj*dj*dj; r15j=r13j*r14j; Rj=num2str(totalj);%相对于外界的体积%这里的全局变量global kj是更新数据的标志位,global anjian1j是判断供风机的按键是否开启,这些与定容排风机系统相似。根据公式(10)的计算公式,算出变容排风机每秒钟排出的气体质量。图3.4 系统模块3仿真界面然后介绍一下分油机间的代码实现,由于分油机间有一个分油机间的排风机,所以与前面介绍的密闭空间有一定的不同,分油机间的排风机仿真代码如下:if(get(handles.TB10,value)=1 ) set(handles.text37,string,500); Rvshopj=str2double(500)*str2double(600); r11Cshopj=Rvshopj/(str2double(r4)*str2double(r2);%每秒钟的进气量时间 r16=str2double(t5)*str2double(t6); r17=str2double(T0)+str2double(t5); r18=r16/r17; w22shopj=r11Cshopj*r18;%每秒钟的总质量 end if(get(handles.TB10,value)=0) set(handles.text37,string,OFF); w22shopj=0; end代码实现,当分油机间的排风机打开,进入气体的质量是w22shopj,排风机关闭时进入的气体量为零。以下是分油机间的仿真代码实现:r20jj=str2double(T1jj)+str2double(t5);%室内温度分油机间 r19jj=r15j*r18-r15j*r18*bj; R2jj=num2str(r19jj); %得到每秒钟进入的气体质量M34jj=str2double(101000)*str2double(V34jj)*str2double(t8)/(str2double(t7)*r20jj);%34机房的空气质量在一大气压 m2jj=str2double(m34jj); m2jj=m2jj+r19jj-w22shopj-str2double(Mz34jj); m34jj=num2str(m2jj); m1jj=(M34jj+str2double(m34jj)*str2double(t7)*r20jj/(str2double(t8)*str2double(V34jj); %得到室内的空气压力 m22jj=m1jj/str2double(r4); set(handles.text100,string,num2str(m22jj); %得到相对压力分油机间的代码除了多了一个排风机外,其他代码实现和其他的密闭空间实现基本相同。 3.2.5密闭空间模块的仿真实现以上一节介绍的分油机间的模型为例介绍一下密闭空间模块的仿真实现,密闭空间模块就是运用了MATLAB GUI中不同界面传导数据的技术实现的。仿真代码如下:txt1jj=dengshu52j;%每秒钟的气体体积 txt2jj=R1;%外界的气体密度 txt3jj=T1jj;%室内温度34机房 txt4jj=R2jj; %得到每秒钟进入的气体质量 txt5jj=num2str(M34jj);%一大气压愿机房的空气质量 txt6jj=num2str(m1jj);%室内的气体压力 txt7jj=num2str(m22jj);%相对压力 txt8jj=m34jj; txt9jj=e1j; setappdata(0,out1jj,txt1jj); setappdata(0,out2jj,txt2jj); setappdata(0,out3jj,txt3jj); setappdata(0,out4jj,txt4jj);
展开阅读全文