《VBA技术的智能建筑综合布线CAD系统的开发与研究-基于.docx》由会员分享,可在线阅读,更多相关《VBA技术的智能建筑综合布线CAD系统的开发与研究-基于.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于Visual LISP 和AutoCAD VBA技术的智能建筑综合布线CAD系统的开发与研究【摘 要】 本文基于对Visual LISP和AutoCAD VBA两种AutoCAD二次开发工具的研究,通过与传统智能建筑综合布线设计方法的比较,开发了一种全新的智能建筑综合布线CAD系统。【关键词】 综合布线;CAD;Visual LISP;AutoCAD VBA引言作为智能建筑的“中枢神经”系统,综合布线系统是智能建筑必备的基础设施。但发生故障导致智能系统瘫痪的根源,有70%以上是由于智能系统的布线不善。因此,有必要加强对综合布线系统设计和施工方法的研究。综合布线是否合理,将直接影响到“3A的
2、功能。而当前国内相当数量综合布线的工程设计人员仍利用手工进行设计,过程非常繁琐,而且布线器件数量的分类统计和各种线缆长度的测量、计算既费力又容易出错,加上现在的网络系统越来越复杂,综合布线设计的工作量非常大。综合布线CAD系统正是为解决这一矛盾而开发的。本文所提出的系统是利用AutoCAD 2004提供的面向对象的Visual LISP可视化开发工具和AutoCAD VBA技术进行AutoCAD平台上的二次开发,采用面向对象的分析设计方法。1、CAD技术在国内外综合布线行业的应用状况 由于综合布线技术在智能建筑中得到广泛应用是近十年左右的时间。综合布线系统CAD的研究和应用目前仍处于起步阶段。
3、虽然国内外已有科研院所和系统集成商等各种类型的单位在开发综合布线系统CAD软件,但仅有的己经开发出来的几个综合布线系统CAD软件,多是用来进行方案设计,能够用来进行施工图设计的CAD软件极少,且没有任何一款软件被广泛使用。国内也已经开始有综合布线系统的CAD软件出现。这类软件大多数是由计算机专业的人员开发。由于开发人员以计算机专业知识为主而没有综合布线工程实践经验。因此,开发出的这类CAD系统在用于设计,特别是用于施工图设计时,总会出现这样或那样的问题。出于商业目的,这类软件又几乎没有给综合布线系统的专业人员留任何开发接口,使得这类CAD系统即使在使用中有问题,综合布线系统的专业人员也无法对其
4、再进行开发,从而影响到软件的推广应用。全面推广应用智能建筑综合布线系统CAD技术,特别是综合布线系统的施工图设计CAD技术,还需要智能建筑综合布线专业的科研和工程技术人员的继续共同努力。国外一些著名的布线厂商,如西蒙公司等,开发出的软件只是针对自己产品的CAD系统,这类CAD系统不具备通用性,用哪家公司的CAD系统做的设计,在工程实施时就必须采用哪家的产品,否则就无法实施。而且该类CAD系统大多只能用来做综合布线系统的方案设计,施工图设计仍然要用通用绘图软件由设计者一笔笔绘出。2、传统的综合布线设计方法存在的问题 目前,综合布线工程的施工图设计基本上都是由设计者手工进行,然后利用AutoCAD
5、等通用绘图软件绘图。与现代设计方法相比,这种落后的设计方法存在以下缺点: 在进行综合布线工程的施工图设计时,各种设备和线缆图形符号的绘制和修改很费时间,而且在这些图形符号的绘制过程中存在大量的重复工作。设计者需要花费大量的时间考虑绘图的问题,以致于没有足够的精力来考虑设计方案选择以及规范条文等问题,使得设计过程本末倒置。 没有精通综合布线系统相关规范和标准的设计者在进行施工图设计时,往往需要边做设计边翻阅规范,使得设计效率很低。 施工图设计过程中还有大量计算工作。特别是目前的商务大楼和综合楼的综合布线工程施工图设计,由于其中的办公室大多为大开间办公室,使得计算过程更为复杂。 综合布线工程中各种
6、设备和线缆的用量统计是一项十分繁琐且容易出错的工作。特别是现在的布线系统越来越庞大,越来越复杂,使得手工统计设备和材料用量的工作更加费时间。3、综合布线CAD系统的总体结构与功能综合布线CAD系统研究的目标是为设计人员提供一个方便实用的设计环境和工具,缩短设计周期,提高设计效率和质量,促进设计标准化和计算机化。该系统采用综合布线设计功能与AutoCAD2004的基本功能无缝结合的方式,其设计的专业功能完全自行设计开发。围绕综合布线设计过程的特点,根据系统划分原理,将该系统划分为若干功能模块:建筑群干线子系统设计、建筑物干线子系统设计、水平子系统设计、工作区子系统设计,把它们加入到AutoCAD
7、的系统菜单中,这样既保持了AutoCAD2004一贯风格,同时又加入了综合布线设计所需的特殊风格。其总体结构如图1所示。图1 综合布线总体结构功能图4、AutoCAD VBA与Visual LISP开发技术简介4.1 AutoCAD VBAAutoCAD 2004已经将AutoCAD VBA集成在系统内部,使用户使用更加方便。AutoCAD VBA依靠ActiveX技术来操作AutoCAD。VBA是Visual Basic for Application的缩写,由Visual Basic派生而来,现在已经成为Microsoft产品的标准语言。AutoCAD VBA集成开发环境具有如下特点:VB
8、A使AutoCAD能够与其它应用程序直接共享数据,如Microsoft Office 2003软件等。在VBA集成开发环境中,可以通过拖动图标的方法,简单而可视化地建立用户界面。VBA的语言代码完全继承了VB的特征,可以说是世界上最简单的编程语言,但其功能并不比其它编程语言弱。 具有开放式的对象模型。AutoCAD 2004软件中的ActiveX对象模型十分有用,它显示了每一个对象的方法和属性。用户可以按照自己的愿望对AutoCAD2004进行编程或定制。 良好的运行速度。VBA的运行速度与ObjectARX应用程序非常接近,比其它开发方式(ADS, LISP等)要提高许多。4.2 Visua
9、l LISP开发环境Visual LISP作为AutoLISP的集成开发环境,增加了许多新功能,使AutoLISP的编程更加方便快捷。 Visual LISP提供了一个使用方便、功能齐全的编程环境。 Visual LISP编程环境提供了功能强大的程序调试功能。 Visual LISP提供了一些文件管理功能。本文中利用Visual LISP和AutoCAD VBA开发技术可定义部分新的AutoCAD命令,从而可以大大提高工程技术人员的设计效率,缩短设计周期。另外还可编写能够直接被用来进行综合布线系统施工图设计的程序。综合布线系统的专业人员也可以在研究过程中编写的程序为基础,根据自己的需要继续进行
10、开发。5、综合布线AutoCAD运行环境的设置在以下介绍的开发综合布线CAD系统的方法中,默认操作系统安装在C盘,AutoCAD 2004的安装目录为C:PROGRAM FILES AutoCAD 2004.在综合布线CAD系统中,开发了一些系统支持文件,这些文件需要放到AutoCAD的支持文件搜索路径中。为了方便维护系统,综合布线CAD系统在原AutoCAD系统的基础上增加几个子目录用于存放这些文件,并将这几个子目录设置为AutoCAD的支持文件搜索路径。综合布线CAD系统增加的AutoCAD支持文件搜索路径为:C:Program filesAutoCAD 2004SCS,C:Program
11、 filesAutoCAD 2004Block,C:Program filesAutoCAD 2004BMP其中SCS子目录用于存放用Visual LISP和VBA编写的程序文件;Block子目录用于存放新定义的图块文件;BMP子目录用于存放新开发的工具栏菜单的图标文件。为了方便使用ADO库,在每次启动综合布线CAD系统时就将ADO库导入系统,这样就避免了每次使用ADO库时都必须首先加载的麻烦。实现的方法是在系统文件C:Program filesAutoCAD 2004Supportacad2004.lsp中运用(vlax-import-type-library)函数导入ADO库。将下列程序语
12、句加入到acad2004.1sp文件中的(princ)语句之前即可达到该目的。 (vlax-import-type-library :tlb-filename C:Program FilesCommon Filessystemadomsado15.d11 :methods-prefix “ado-” :properties-prefix “ado-” :constants-prefix “ado-”)加入上述代码之后,所有新的ADO函数均以“ado-”开始。在上述加载ADO库的过程中使用了ActiveX的实用函数(vlax-import-type-library,因此在运行加载ADO库的函数语
13、句之前需要先加载Visual LISP的扩展函数。实现的方法是在文件C: Program filesAutoCAD 2004Supportacad2004.1sp中的(vlax-import-type-library)函数语句之前加入以下语句:(vl-load-com)每次启动系统时,该函数都将加载Visual LISP的扩展函数。因此,在使用Visual LISP编写的程序中,即使使用了Visual LISP的扩展函数,也没有再调用该函数。所有新开发的综合布线CAD的命令代码均在文件equipments.lsp和文件syscom.lsp中,为了方便使用这些命令,需要在每次启动CAD系统时就加
14、载这两个文件。其方法是在文件C:Program filesAutoCAD 2004Supportacad2004.lsp中的(princ)语句之前加入下列语句: (load C:program filesacad2004SCSequipments.lsp) (load C:Program filesacad2004SCSsyscom.lsp) 这样,在使用这些新开发的命令时,不需要每次都手工加载这两个文件就可以直接使用文件中定义的AutoCAD命令。 使用AutoCAD VBA开发的程序都保存在acad.dvb文件中,该文件位于C:Program filesAutoCAD 2004SCS文件夹
15、中。每次启动系统时,该文件都被自动加载。6、数据库的建立 在综合布线CAD系统中,需要一个数据库来存储设计过程中的大量非图形数据,并在其中形成最后的材料用量报表。本CAD系统选择了Microsoft Access 2003数据库系统,存储数据的数据库文件为data.mdb,该文件存放在C:My Documents。 该数据库包括“材料用量报表”、“插座信息”、“插座用途”、“建筑基本信息”和“双绞线信息”等五个数据表。其中,除了“插座用途”和“插座信息”表之间存在一对多的对应关系之外,其余的表之间不存在明显的对应关系。但有些表中的部分或全部数据是利用其它表中的数据作为原始数据进行计算后得到的。
16、7、综合布线CAD系统的工作流程图2 综合布线CAD系统的工作流程8、目前综合布线CAD系统存在的主要问题8.1综合布线CAD系统的程序还需要进一步优化和完善。很多程序还没有在工程实际中使用,还没有得到工程实践的检验,因此可能还存在功能不完善的地方,可能有些功能不太实用,这些问题需要到工程实践中去解决。8.2工程造价的计算。综合布线CAD系统可以提供综合布线工程的主要设备和材料用量报表,如果在此基础上再将设备和材料的单价以及相关的预算定额输入到数据库系统中,通过编程使计算机自动生成整个工程的造价报表将成为可能。8.3 使用说明的编写。综合布线CAD系统在AutoCAD 2004的基础上增加了许
17、多专用命令,使用该系统进行施工图设计时也有一些特殊要求。为了使本CAD系统能够得到推广应用,需要编写使用说明。8.4 实时帮助功能的完善。综合布线CAD系统只提供了面向菜单的命令帮助。为了使CAD系统容易学习和使用,可以提供专门的帮助文件。另外,还可以提供综合布线专业相关规范和标准的快捷查询功能,使施工图设计者在设计过程中可以快速查阅各种规范。9、综合布线CAD系统的发展趋势综合布线技术属于新兴技术,在智能建筑综合布线行业全面推广CAD技术,特别是在综合布线工程施工图设计中推广CAD技术,还有很多工作要做,还需要智能建筑综合布线专业的科研和工程技术人员的继续共同努力。相信在不久的将来,CAD技
18、术一定能够在综合布线行业得到普及应用,也一定能给综合布线行业带来巨大的经济和社会效益!Research on Intelligent Building Structured Wiring CAD System Based On Visual LISP and AutoCAD VBA Technologies【Abstract】Compared to traditional designing ways of intelligent building structured wiring CAD system,this paper develops a new intelligent buildi
19、ng structured wiring CAD system based on the Visual Lisp and AutoCAD VBA technologies.【Keywords】intelligent building; structured wiring;Visual LISP;AutoCAD VBA【参考文献】1、吕俊伟等,结构化综合布线系统的设计探讨,J,工业技术经济,1997,16(4):99-100 2、李山.智能建筑综合布线系统设计,J,重庆工业管理学院学报,1999.08,13(4):10-123、阳莉,结构化综合布线系统的设计与应用,J,重庆邮电学院学报,1999
20、.12,11(4):81-844、曾喜华.智能建筑综合布线设计软件开发,D,武汉理工大学硕士学位论文,2002.05,5、胡英奎.智能建筑综合布线系统参数化设计方法研究,D,重庆大学硕士学位论文,2002.126、李江涛.智能建筑综合布线施工图计算机辅助优化设计研究,D,重庆大学硕士学位论文,2004.057、何志议,智能大厦结构化综合布线系统设计方案综述,J,电工技术杂志,2003.12:39-428、Ghobad Heidari-Bateni,clare D McGillen.Achaotic direct-sequence spread-spectrumcommunication system.J.IEEE Trans on Communication,2004,42:1524-15275