APP下载

基于C#语言和云数据库的数字化火灾自动报警系统图设计

2023-11-24孙子茗孙家南张馨皓马泽宇

现代建筑电气 2023年10期
关键词:分区报警火灾

孙子茗, 孙家南, 张馨皓, 马泽宇

[同济大学建筑设计研究院(集团)有限公司, 上海 200092]

0 引 言

随着我国城市建设水平的不断提升,火灾自动报警系统已成为建筑电气设计中的重要组成部分[1-2]。然而,在系统图绘制方面,设计人员面临着诸多挑战,如统计困难、反复修改等问题,这些问题不仅影响了设计效率,也制约了图纸质量[3-4]。

在传统设计中,设计师需要根据防火分区统计平面图中的设备点位,然后在系统图中逐一插入图例并修改数量,这种方法既费时又容易出错。为了提高设计效率,一些设计师已经采用了基于AutoLISP或VBA的定制化AutoCAD二次开发方法,运用数字化技术快速处理图纸内容[5],但这类被称为“面向过程”的编程语言,存在诸如数据孤立、修改困难和拓展困难等问题[5-6]。

针对上述问题,提出了一种数字化的火灾自动报警系统图设计方法。该方法基于面向对象的C#语言和云数据库技术,首先从电气设计的角度进行建模,将防火分区和相关数据作为整体进行处理;然后,通过C#程序将CAD中的图形文件进行有效的提取和统计,并将统计结果存储到云数据库中;最后根据云数据库中的内容生成或修改火灾自动报警系统图。工程实践结果表明,利用数字化手段和云数据库的优势,能够以较低的研发成本,快速开发“轻量应用”,提升设计效率并为未来的数据分析提供数据基础[7]。

1 软件设计

1.1 程序架构

程序架构的设计需要充分考虑易用性、可扩展性和可维护性[8]。图形数据的统计、存储、使用分别对应程序中的平面图模块、数据库模块和系统图模块,通过图形化窗体对应的功能按钮将各模块串联起来。程序架构示意图如图1所示。

图1 程序架构示意图

平面图模块用于在平面图中寻找所有防火分区,并根据预设的筛选条件,按防火分区统计火灾自动报警设备点位数量等信息,然后将统计结果发送至数据库模块,这一模块提高了平面图数据统计的准确性和效率。

数据库模块用于程序窗体与数据库的连接、查询和修改操作。该模块接收并存储平面图模块统计完成的数据,并为系统图模块提供所需的信息。这一模块确保了数据的安全性和一致性,便于后续数据的更新和维护。

系统图模块用于查询数据库中的信息,并生成或修改火灾自动报警系统图。通过与数据库模块的交互,系统图模块能够快速地生成或更新系统图,保证平面图与系统图数据的一致性。

1.2 基于MySQL的关系模型抽象

火灾报警系统设计通常以防火分区为单位,每个防火分区包含相同属性的数据,例如防火分区编号、点位数量等。这种具有固定属性的数据模型可以抽象为关系模型,以二维表结构在云数据库中进行逻辑表达和实现。

针对火灾自动报警系统的统计需求,在云数据库中创建火灾自动报警系统点位表。该表共创建了42个列属性定义。火灾自动报警系统主要列属性如表1所示。其中,IdKey作为索引号,由MySQL自动生成;第5至第39列属性表示火灾报警平面图中的消防设备数量,如烟/温感探测器、消防风机、声光报警器及短路隔离器等;第40至42列属性代表回路信息。

表1 火灾自动报警系统主要列属性表

程序将平面统计结果发送至云数据库,满足校验规则的数据将被存入点位表中。借助Dbeaver等第三方图形化工具,设计师可以在脱离CAD环境的情况下单独查看和修改数据。

1.3 云数据库的必要性

数据库系统是本次程序的核心组成,能够实现高效、安全的数据存储和管理。然而,数据库系统的部署和维护非常复杂,需要掌握Linux、DBA、软硬件运维和网络安全等专业知识。对于非软件工程专业出身的建筑设计师来说,鉴于建筑设计行业通常缺乏通用性软件解决方案,这就带来了学习门槛高、部署复杂、软硬件成本昂贵等挑战[7]。

针对这一问题,本研究采用了服务化方法[9],即通过购买腾讯云数据库这一软件服务的方式,以较低的学习和经济成本,实现数据库的免运维部署和全天候稳定可靠在线。采用云数据库符合产业数字化转型趋势[7]并且具有以下两点优势。

首先,云服务运营商提供了全面的产品支持,实现了即拿即用的部署方式[8],避免了软硬件运维、网络安全、灾备、资产管理以及商用软件授权等方面的问题,极大地降低了学习门槛。设计师可以将更多精力集中在专业知识建模与程序设计上,加快开发进程。

其次,针对本研究中的数据规模仅为几十兆字节级别的情况,无须搭建本地服务器或租赁云服务器。云服务提供了灵活的租赁模式,使得试错、研发和使用成本大大降低。这种灵活的租赁方式实现了轻重资产的分离合作,使得开发团队能够以较低成本快速开发轻量级服务。开发者无须投入大量资源来维护庞大的基础设施,而是依靠云服务商提供的强大基础设施,从而专注于系统的功能开发和优化。

因此,本研究通过购买云数据库的方法,借助平台赋能,快周期、低成本地完成程序中的数据库环节设计,并为未来数据挖掘、产品服务创新提供数据基础[7,9-10]。同时,云服务的灵活租赁模式也为试错、研发和使用提供了更多的便利,使得开发团队能够灵活运作,降低了开发过程中的不必要的资源投入[5,7-9]。

1.4 C#与AutoCAD交互

程序采用C#语言编写,平面模块和系统图模块均在CAD中运行并共用窗体。平面模块在平面绘制完成后使用,以图层、块名和筛选范围为主要筛选条件。程序读取平面图中符合筛选条件的防火分区分隔曲线及图块,通过识别防火分区范围内的图块,实现对平面信息的自动化统计。防火分区信息以属性块的形式放置于防火分区曲线的闭合空间内。防火分区信息表如表2所示。

表2 防火分区信息表

点位统计结束后,平面统计模块会调用WinForm窗体控件作为图形化界面,将结果显示表格中,经设计师校验和修改后,最终结果将发送至数据库模块并存入对应表格中,实现数据可视化[11-12]。

系统图模块在WinForm窗体下表格中显示已入库的数据,通过调用火灾报警系统图标准图例,生成对应系统图并自动填写相关信息。火灾报警系统图标准图例如图2所示。

图2 火灾报警系统图标准图例

2 工程实例验证

2.1 工程概况

以某二甲医院项目为实例,验证程序的可行性与优缺点,该工程建筑面积约22 327.8 m2,其中地上建筑面积21 498.1 m2,地下建筑面积829.7 m2,地上8层,地下1层,主要功能包括诊室、手术室、病房、办公室及设备用房等。建筑效果图如图3所示。

图3 建筑效果图

2.2 系统形式

该工程采用集中报警系统,消防控制室(与安保控制室合用)位于一层,设有直接通往室外的出口,室内设有火灾报警控制器、消防联动控制器、消防控制室图形显示装置等设备[13]。主要联动设备包括消防水泵、排烟风机和正压风机等。

一般功能房间选用点型感烟火灾探测器,探测器保护半径R=5.8 m。变电所、弱电机房等重要设备房间设置气体灭火系统,通高的中庭设置线型光束感烟火灾探测器及图像型火灾报警系统。

2.3 平面设备统计与数据入库

本项目火灾自动报警系统使用软件适配的标准图例进行绘制。软件使用前根据防火分区设置统计区域,将每个防火分区内的消防设备涵盖在内,并逐个编辑防火分区信息块,以便软件形成与平面图结构相符的系统图。以一层为例,一层的防火分区示意图如图4所示。

图4 一层防火分区示意图

程序将对预设消防点位及联动设备统计,并根据点位数量及联动点位数量计算当前防火分区所需的总线回路数,总线回路数N应满足下式:

(1)

式中:N——回路数量,整数,向上取整;

N1——设备总数(点);

N2——联动设备总数(点);

K1——总线余量系数,依据规范应预留不少于额定容量10%的余量[13],故取0.9;

K2——联动总线余量系数,依据规范应预留不少于额定容量10%的余量[13],故取0.9。

在AutoCAD中调用程序后,将显示图形化程序界面,界面由两张表格组成,其中上半部分表格用于平面模块,下半部分表格用于系统模块图。图形化程序界面如图5所示。

图5 图形化程序界面

平面统计完成后,统计数据将汇总至上半部的平面统计窗体,供设计师复核、确认。防火分区内编号在平面中指定,楼层索引信息由数据库自动生成,其余统计数据由程序计算后自动填充,统计结果与外部数据的结构一致,点位可手动修正。复核无误后,勾选所需回路,发送至数据库模块。

数据库模块将对接收的信息进行处理,针对新增的防火分区,将在数据库中新建行、存入对应信息、返回索引值,此外程序还将在DWG文件中自动同步设置索引号。针对已入库的防火分区,数据库模块将检索并修改对应的行信息。数据库中的火灾报警系统表如图6所示。

图6 数据库中的火灾报警系统表

2.4 系统图生成及修改

根据深度规定,施工图阶段需提供火灾自动报警及消防联动控制系统图[14]。本程序采用树形结构,在系统图中表示出各防火分区的系统组成、点位信息、连接信息、楼层及防火分区信息、回路信息、设备总量及联动设备数量。数据库模块会将已入库的分区信息通过图5中的下半部分表格完整展示,勾选所需回路即可生成或修改对应的系统图。

首次生成系统图时,程序会按楼层排序并按照防火分区逐层生成系统图的对应图元,生成完成后,需由设计师结合建筑内的实际路由调整各防火分区的图元位置,并手动补充消控室信息、消防桥架规格及线缆统计等。基于软件生成系统图的手动完善成果图如图7所示。

图7 基于软件生成系统图的手动完善成果图

在工程实践中,系统图的修改频次高于生成频次,因此系统图模块中的修改子模块也是十分必要的。该子模块会结合数据库中的点位信息和设计师的框选范围,在保持DWG图元位置不变的前提下,只修改系统图中的点位信息,从而实现系统图的快速修改。

3 结 语

通过对火灾自动报警系统设计流程的分析,采用面向对象的编程方法,结合外部云数据库,构建了火灾自动报警系统的关系模型,提出了基于面向对象的数字化火灾自动报警系统图设计方法,并在工程实践中取得了以下结论。

(1) C#语言具有面向对象的特性,将防火分区和相关数据视为一个整体,能更好地应对复杂工程,提高程序设计的准确性和可靠性。此外,C#语言拥有完善的生态系统和强大的程序功能,使其相较于AutoLISP、VBA等语言更适合用于工程建模和AutoCAD二次开发。

(2) 数据库系统在本次设计中扮演着数字化基础设施的核心角色。一方面,数据库提供了有效的数据管理和存储机制,使设计数据得以高效地组织和保存;另一方面,设计图纸及其所包含的数据是建筑项目实施的核心依据,且具有重要的数据挖掘潜力。使用数据库搭建数据基础,设计流程的上下游环节可以实现数据互通;基于自身业务侧重点,运用AI等数字化手段对工程数据进行挖掘,解决信息孤岛问题,释放数据价值,建立跨界融合的数字化生态,为设计师呈现可视化程度高、交互性强、表现力出众的产品和服务。

(3) 在数字化转型过程中,云数据库能够显著降低开发学习和经济成本。一方面,云数据库运营商提供了完善的基础服务,使得设计师无须深入学习数据库的底层逻辑,从而可以更专注于程序设计;另一方面,针对于小规模的数据存储场景,云数据库提供了灵活的租赁方式,相较于搭建本地服务器或租赁云服务器所需的投入更少,从而大幅降低了试错、研发和使用的成本。这种灵活的租赁方式实现了轻重资产的分离合作,使得开发团队能够更加灵活地运作,减少不必要的资源投入。

综上所述,本文设计了基于C#语言和云数据库的数字化火灾自动报警系统图生成方法,充分利用数字化技术和云数据库的优势,为设计工作提供了更高效、可靠的解决方案,工程实践表明,这一方法能够在工程设计的数字化转型中得到应用。

猜你喜欢

分区报警火灾
上海实施“分区封控”
浪莎 分区而治
LKD2-HS型列控中心驱采不一致报警处理
遇火灾怎么办?
掌握火灾逃生知识
2015款奔驰E180车安全气囊报警
死于密室的租住者
基于SAGA聚类分析的无功电压控制分区
基于多种群遗传改进FCM的无功/电压控制分区
奔驰E260车安全气囊报警