期刊专题 | 加入收藏 | 设为首页 12年实力经营,12年信誉保证!论文发表行业第一!就在400期刊网!

全国免费客服电话:
当前位置:首页 > 免费论文 > 社科历史 > 自然科学 >

VBA在雷电灾害风险评估的应用

1引言

雷电灾害风险评估工作涉及大量的数据计算、分析,并最终以报告的形式提供给使用者。以人工分析计算和编制报告的方式会花费大量时间,且容易出错。因此,杨仲江等[1,5]开发了不同的雷电灾害风险评估软件,这些软件都各有优点,比如整合度高、专业性强、界面美观等。而VBA编程用于雷电灾害风险评估工作,实现计算分析及报告编制的自动化也有其独有的优势。由于以VBA编程不需要开发一个集成的软件系统,而是利用常用的办公软件MicrosoftOffice内置的VBA语言进行二次开发,所以相对于其他雷电灾害风险评估软件的开发过程,具备操作简单、编写快速、维护方便、适应性强的优点。

2开发工具

VisualBasicforApplications(VBA)是一种基于VisualBasic的宏语言,它被内置到Office应用程序中,可以用来建立用户定义函数,自动化流程,从而扩展和控制宿主应用程序的许多功能,并且VBA能通过动态链接库(DLL)访问WindowsAPI。VBA主要有四个方面的作用:1)规范用户的操作,控制用户的操作行为;2)操作界面人性化,方便用户使用;3)重复的手工操作通过执行VBA代码可以迅速的实现;4)实现其他宿主程序不具备的功能。在雷电灾害风险评估工作中,以Office作为VBA代码的宿主,通过VBA对Word和Excel进行二次开发,从而形成一套集数据分析和报告生成为一体的工作系统。

3设计思路

按照VBA宿主的不同对该工作系统各项功能进行分类,主要分为两部分:第一部分是信息输入、计算、分析、判断、提示,这一部以Excel为宿主;第二部分是报告生成,以Word为宿主。3.1Excel工作表处理通过Excel工作窗口进行人机对话,实现信息输入、计算、提示等功能。信息输入:直接在Excel工作表中填写;计算:根据相关的雷电灾害风险评估标准[6,8],利用Excel自带函数预设公式实现;提示:使用Excel的条件格式功能,通过填充不同的单元格背景色实现。VBA主要辅助完成分析、判断功能,可分为三个步骤:1)根据评估单体数量,复制模表依序生成各单体评估工作表;2)分析建筑物特征,更新各个单体评估工作表中的计算参数;3)判断计算结果,选择合理的保护措施。在工作表的设计上,根据计算数据性质的不同分为三个初始工作表:1)公共信息表,存储项目编号、名称、土壤电阻率ρ、雷击大地的年平均密度Ng等项目共用信息;2)评估单体信息汇总表,存储所有建筑单元的长L、宽W、高H、建筑类型、等效截收面积AX、年预计雷击次数NX等数据,本表既引用前表的数据,又是生成后表的数据来源,起到承前启后的作用;3)承灾体评估表,存储土壤类型缩减因子ra、消防措施缩减因子rP、火灾危险性缩减因子rf、特殊伤害增加损失量的因子h、相对损失量LX、以及各类风险值RX等由承灾体自身特征决定的参数及其相关计算结果。在初始工作表中承灾体评估表将即为单体评估表的模表。3.2报告生成处理报告生成功能通过引用Word模板实现,模板按照内容分为:代码模板、区域评估模板、单体评估模板、结论及建议模板。其中代码模板为宏模板,存放VBA代码,程序模块包括:1)报告初始化模块:根据Excel工作表的相关记录加载区域评估、单体评估、结论及建议各部分文字模板,生成报告文档;2)外部文件导入模块:在报告模板中导入闪电、土壤电阻率断面图、风险区划资料等有需要的外部文件资料;3)数据导入模块:调用Excel工作表并在报告文本中所有相应位置自动输入相应数据信息,这一功能利用查找数据标签的方法实现。3.3数据标签设置所谓数据标签即是在Word模板中定义一种结构固定、便于计算机理解的字符串,该字符串能够表明Word报告需要引用的数据与Excel工作表单元格之间的位置关系,然后通过VBA自动定位并替换标签,从而导入数据及相关信息。因此,比较重要的一个环节就是在报告模板中做好数据标签的预处理。3.3.1设置原则1)唯一性:保证模板中各参数都具有唯一的标签表述,并保证数据标签能区别于报告模板中的其他文本。2)对应性:通过标签表述能对应到Excel工作表的单元格,使VBA能够通过标签自动查找到对应的单元格数据。3)可更新性:根据设计思路,单体评估表是依序复制模表生成,当需要引用下一张单体评估工作表数据时,模板中的数据标签要能够自动更新对应到新表。3.3.2标签形式根据标签设置原则,报告模板中的标签设置可采取工作表+单元格的形式。比如“sheet03!H11”,即对应为“Sheet3”中的“H11”单元格。假设“sheet03!H11”对应的是一号楼评估表中Z1区风险值R1的单元格,通过自动更新表号,将该标签更新为“sheet04!H11”,即对应到了二号楼的Z1区风险值R1。3.4衔接处理在Excel中增加一个单独的VBA控件及相应的功能模块,通过控件调用预设的模板生成Word报告文档。从而将两个基于不同宿主程序的部分衔接起来,成为一个完整的工作系统。

4VBA在报告生成处理中的应用实例

报告生成处理部分的三个模块中,比较重要的过程都涉及到数据标签的处理,VBA通过调用Word的查找、替换功能,实现数据标签更新、定位及替换。其过程代码列举如下:1)标签更新过程4与H1、3结合时的98%。总体来说,组合的特征参数都获得了较好的识别率,这些特征都是包含着信号的某种重要信息。当H1、2、3和X1、2、4结合时,不但没有提高识别率,反而是降低了,也说明了越多的特征,信息越杂乱,越不利于识别性能的提高。

5总结

本文采样频率2kHz,小波3层分解将信号频段大致划分为0~125Hz,125~250Hz,250~500Hz,500~1000Hz分别对应A3、D3、D2、D1的频段范围;而EMD分解将信号划分为由高到低频的若干个单一频率分量及余量。在信号选择中,正好选取了,小波分解的低频分量A3和高频分量D1及EMD分解中的高频信息和中频信息,大量的实验证明,EMD分解得到的第一个IMF都是信号的高频分量,基本包括了大部分的突变信息,而IMF3包含了信号的发展趋势。因此互相结合后,这些特征几乎涵盖了信号的主要特征,最后取得了98%的最好识别率。与传统统计参数相比,非线性特征参数能更有效的描述不规则和非周期性的信号,本文对信号先进行小波分解和EMD分解后各系数再求非线性特征参数,取得了很好的识别效果,这将为电力运行部门判断电能扰动类型提供一种新的思路。

作者:林巧 单位:重庆市防雷中心


    更多自然科学论文详细信息: VBA在雷电灾害风险评估的应用
    http://www.400qikan.com/mflunwen/skls/zrkx/192111.html

    相关专题:中国写手之家 论文投稿网


    上一篇:图书馆建筑设计理念及实践
    下一篇:没有了

    认准400期刊网 可信 保障 安全 快速 客户见证 退款保证


    品牌介绍