




已阅读5页,还剩62页未读, 继续免费阅读
(计算机系统结构专业论文)基于net的空调控制软件快速开发工具研究与开发.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
j 二海大学顶_ l _ 学位论文 摘要 降低软件系统开发成本,提高开发效率是企业软件开发不断追求的目标。 从技术角度来说,提高软件的复用效率,采用更先进的开发工具是提高开发效 率的有效手段。 目前,国内部分空调企业的控制软件的开发过程存在不少问题,软件的复 用性差,软件开发平台和开发工具应用较少,功能较为简单,无法应对空调产 业产品作为多种产品键状集成开发的特点以及快速更新的市场需求,这就导致 了产品的成本增加、竞争力下降。这是国内空调生产企业面临的个巨大挑战。 本文利用i d e f o 建模方法对空调控制软件的结构与特点进行了深入分析, 在此基础上采用模块化组件化的方法对控制软件的丌发进行改造,并开发了空 调控制软件快速丌发工具。工具以图形化的软件辅助开发为实现目标,提供了 图形化的控制过程描述及对应代码的自动生成功能。同时,快速开发工具提供 了组件化管理功能,应用软件的模块能以组件化的形式保存在应用组件库中, 通过组件库来进行统一管理,软件的可重用性和应用的复用性大大提高。快速 开发工具通过引入图形化编程、自动代码生成、组件化管理等思想,解决了控 制软件开发过程中的一些共性问题,使得控制软件的开发效率与开发质量显著 提高,从而降低了产品的开发成本、提升了产品的竞争力。 关键词:控制软件开发工具1 d e f o 方法组件化 v i 一海大学l i i :l :学位论文 a b s t r a c t r e d u c i n gt h es o f t w a r ed e v e l o p m e n tc o s ta n di m p r o v i n gt h ed e v e l o p m e n te f f i c i e n c y a r ea l w a y st h eg o a lo fe n t e r p r i s es o f t w a r ed e v e l o p m e n t t e c h n i c a l l y , i ti sa ne f f e c t i v e w a yt oi m p r o v e t h e d e v e l o p m e n te f f i c i e n c yb yi m p r o v i n gs o f t w a r er e u s e e f f e c t i v e n e s sa n de m p l o y i n ga d v a n c e dd e v e l o p m e n tt o o l s c u r r e n t l y , t h e r ea r ep r o b l e m sl y i n gi nt h ed e v e l o p m e n to fc o n t r o ls o f t w a r eo f s o m ed o m e s t i ca i r - c o n d i t i o n e rm a n u f a c t u r e r s s o f t w a r er e u s a b i l i t yi s l o w ,a n d s o f t w a r ed e v e l o p m e n tp l a t f o r m sa n dt o o l k i t sa r en o t c o m m o n l yu s e df o rt h e i r f u n c t i o n sa r en o tv e r ys a t i s f a c t o r y , t h u sc a nn e i t h e rc o m p l yw i t ht h em u l t i p r o d u c t c h a i n e di n t e g r a t e dd e v e l o p m e n to ft h ea i r - c o n d i t i o n e ri n d u s t r y , n o rm e e tt h er a p i d u p d a t i n gn e e d so ft h em a r k e t ,u l t i m a t e l yr e s u l t si nt h ei n c r e a s e dc o s ta n dd e g r a d e d c o m p e t i t i v e n e s s s oi ti sag r e a tc h a l l e n g ec o n f r o n t i n gt h i si n d u s t r y i nt h i st h e s i s ,c o n t r o ls o t t w a r es t r u c t u r ea n dc o n l m o nf e a t u r e sa r ea n a l y z e d t h r o u g hi d e f om o d e l i n gm e t h o d ,t h ed e v e l o p m e n to fc o n t r o ls o f t w a r ei s r e s t r u c t u r e dt a k i n gc o m p o n e n t b a s e ds o f t w a r er e u s ei n t oc o n s i d e r a t i o n ,a n dac o n t r o l s o f t w a r ef a s td e v e l o p m e n tt o o l ( f d t ) i sd e v e l o p e d f d ti sa i m e da tg r a p h i c sa i d e d s o f t w a r ed e v e l o p m e n t ,a n di tp r o v i d e sa na p p r o a c ht oc o n s t r u c tc o n t r o lm o d u l e sa n d c o n t r o lp r o c e s s e sb ym e a n so fg r a p h i c sa n dv i s u a l i z a t i o n ,a l o n gw i t hw h i c hi sa f u n c t i o no fc o r r e s p o n d i n gp r o g r a mc o d e sa u t o g e n e r a t i o n a l s o ,f d tp r o v i d e sa c o m p o n e n tm a n a g e m e n ts y s t e m ,b yw h i c ha p p l i c a t i o ns o f t w a r em o d u l e sc a nb e s t o r e da n dm a n a g e di nt h ec o m p o n e n tl i b r a r yi nt h ef o r mo fc o m p o n e n t s ,s ot h a tt h e a p p l i c a t i o ns o f t w a r er e s u a b i l i t yi sg r e a t l ye n h a n c e d b yi n t r o d u c i n gi d e a so f g r a p h i c a lp r o g r a m m i n g ,c o d ea u t o g e n e r a t i o na n dc o m p o n e n tm a n a g e m e n t ,f d t s o l v e ss o m ec o m m o np r o b l e m si nt h ed e v e l o p m e n to fc o n t r o ls o f t w a r e ,n o t a b l e l y i m p r o v e st h ed e v e l o p i n ge f f i c i e n c ya n de f f e c t i v e n e s s ,a n dh e l p st oc u td o w nc o s ta n d e n h a n c ep r o d u c t sc o m p e t i t i v e n e s s k e y w o r d s :c o n t r o ls o f t w a r e ,d e v e l o p m e n tt o o l ,i d e f o ,c o m p o n e n t b a s e d 原创性声明 本人声明:所呈交的论文是本人在导师指导f 进行的研究工作。 除了文中特另t l d n 以标注和致谢的地方外,论文中不包含其他人已发 表或撰写过的研究成果。参与同一工作的其他同志对本研究所做的 任何贡献均己在论文中作了明确的说明并表示了谢意。 签名 本论文使用授权说明 日期 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学 校可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 、 签名日期: 烨 缈 签 师 辫 刀午, l 海大学硕士学位论文 1 1 背景 第一章绪论 降低软件系统开发成本,提高开发效率是企业软件开发不断追求的f 1 标。 从技术角度来说,提高软件的复用效率,采用更先进的开发工具是提高开发效 率的有效手段。 软件复用就是将已有的软件成分用于构造新的软件系统。在结构化的软件 开发中,复用的主要形式是函数复用和模块复用。函数通过参数来适应不同应 用需求的变化,模块也是通过接口规范说明进行连接和组装实现复用。通过软 件复用,软件开发过程避免了重复劳动,应用系统的开发不再采用一切“从零 开始”的开发模式,而是以已有的工作为基础,充分利用过去应用系统开发中 积累的知识和经验,如需求分析结果、设计方案、源代码、测试计划及测试方 案等,从而将开发的重点集中于应用的特有构成成分上。软件复用是解决软件 危机,提高软件的生产效率和质量的现实可行途径。 基于组件( c o m p o n e n t b a s e d ) 的复用是软件复用的主要形式【1 】。基于组件 的开发技术通过对一组相互配合完成某个特定功能的函数或类的组合进行封 装,隐藏了组件内部的具体功能,利用接口与外界进行通讯并对外界提供服务。 这样,在不同层次上,组件均可以将底层的多个逻辑组合成高层次上的粒度更 大的新组件,甚至直接封装到一个系统,使模块的重用从代码级、对象级、架 构级到系统级都可能实现,从而使软件像硬件一样,能任人装配定制而成的梦 想得以实现。 与此同时,软件开发工具也在不断发展。在集成开发环境出现之前,编程 的模式是先用编辑器编辑源代码,然后保存源代码文件,退出编辑程序,调用 编译命令,发现错误后再打开编辑器修改,重复这个过程直到改正所有的语法 错误。现代的开发工具,不仅集成了编辑、编译、调试等基本功能,而且加入 了很多新的特性。像智能感知功能使开发人员无须记忆大量a p i ( a p p l i c a t i o n p r o g r a m m i n gi n t e r f a c e ,应用编程接口) ,版本管理功能使用户无须对代码进行 频繁的备份。还有一些开发工具如j b u i l d e r 等加入了建模、开发生命周期管理 甚至是对设计模式的支持。这些新的功能和特性的出现,使得软件开发工具功 能越来越丰富,用户使用起来更加方便。 但是,上述开发工具的发展,主要集中于通用软件开发工具领域;实际上, 上海大学硕:l 学位论文 某些特定领域软件的开发工具,相对来说还停留在比较简单的阶段。比如,有 些工业控制领域的控制软件( 程序) 开发工具,界面简单,功能单一,对软件 复用支持不够:甚至有些控制程序还是用汇编语言编写,模块性非常差,这样 就增加了开发和维护的难度。因此,针对专用领域的软件开发工具的研究和开 发就显得很有应用价值和实际意义。本文的研究e 是在这样的背景下展开的。 1 2 研究意义 本文所研究的课题是上海市科学技术委员会重大科技攻关项目“面向 变频空调控制的嵌入式系统研究与开发”( 编号0 4 d z l 5 0 0 3 ) 中的一个子课题。 当前空调行业的竞争日趋激烈,作为直接面向用户的产品,空调的性能与 用户需求密切相关。由于用户对空调机型选择的多样性,加上用户不同档次及 对智能化功能的不同需求,控制系统的多样性开发成为直接面对用户的重要环 节,带来相当的紧迫性和较大的工作量,其中的控制软件的开发尤显突出。 目前国内的控制软件的开发还停留在比较低层次的水平上,软件的复用性 差,软件开发平台和开发工具应用较少,功能较为简单。以空调控制软件为例, 每家不同的空调生产厂商乃至每个不同的空调型号,都有整机系统的技术配合 和延伸的具体设计改变,这对控制软件的设计能力及其灵活性、适用性都是一 个挑战。再加上有些厂商的控制系统还是采用的单片机加汇编程序的开发模式, 控制程序功能模块的可重用性不高,导致针对每个不同的产品,需要投入大量 的设计、开发、测试、维护的人力物力,使得产品的供货周期大大增加,无形 中导致了产品的成本增加、竞争力下降。这是空调生产商极力想要避免的问题。 基于这样的背景,我们提出了开发一个空调控制软件快速开发工具( 以下 简称“快速开发工具”) 。快速开发工具基于微软的n e tf r a m e w o r k 支撑环境, 它以变频空调控制系统为主要应用领域,提供了一个界面方便用户对现有控制 软件进行模块化、组件化的改造,并允许用户以图形可视化的方式构造各个功 能模块的关系,最终生成控制软件或模块的代码或代码框架。通过基于模块和 组件的快速定制,实现了控制软件的快速开发。 1 3 论文组织结构 本篇论文以空调控制为例,分析了控制系统的结构以及开发平台在空调控 制系统开发中的作用和意义,然后通过分析空调控制软件结构和特点,提出了 利用一个基于n e t 平台的控制软件快速开发工具来辅助开发控制软件,并且对 上海大学硕士学位论文 这个快速开发工具的设计和实现进行了深入阐述。 本文按如下结构进行组织: 第二章:介绍了空凋控制系统的结构以及软件开发平台: 第三章:介绍了当前空调控制软件的丌发现状,分析了空调控制软件的结 构和特点,并提出了解决空调控制软件开发过程中诸多问题的一种可行方法, 即采用合适的开发工具; 第四章:则快速开发工具的需求及系统架构进行了深入分析,并对系统设 计和实现中采用的相关技术进行了介绍; 第五章:详细讲述了快速开发工具关键模块的设计和实现; 第六章:结论与展望,对整个研究开发过程进行了总结,并探讨了以后的 研究中需要关注的问题。 第二章空调控制系统结构与软件开发平台 由于快速开发工具以空调控制系统为主要应用领域,而且该工具是属于整 个项目中要构建的开发平台的一部分,因此,这一章将简要介绍空调控制系统 的结构及其软件开发平台。 2 1 空调控制系统结构 目前我困生产的变频空调多为分体式,由室内机和室外机两部分组成。变 频空调的控制部件也由包括室内控制部分和室外控制部分,室内部分以室内控 制专用芯片为中心,由遥控器、信号接收器、传感器、显示器和风扇电机驱动 回路组成口 。温度和湿度数据以及运行模式等设定条件以异步串行通讯的方式 送往室外控制部分。 室外部分以系统控制专用芯片为中心,由电源板、整流单元、逆变单元、 电流传感器、室外风扇电动机及阀门控制部件组成。从空调控制的输入输出角 度来看,空调的基本控制如下所示: 图21 空调基本控制结构图 4 巴海大学顾士学位论文 2 2 控制系统组成 从空调控制的逻辑层面来说,可以将所有的输入信号及输出控制都看成是 由一块芯片来进行处理的,而不必区分内外机的芯片。实际上,将来的空调控 制系统可能将室内、外控制芯片合而为一,采用一块性能更高、处理能力更强 的高端控制芯片来完成室内外的控制和处理。 从逻辑角度来看,空调控制的功能结构可以用图2 2 来描述 “,通常包括以 一f ) l 个部分:核心控制、数据采集与处理、变频驱动、家电通信、人机界面, 这些是一般空调控制器都有的基本功能;此外,随着空调朝着信息化、网络化 方向发展,许多新的功能也逐渐增添到了控制器中,比如控制程序远程更新、 远程监控与维护、自适应调节与个性化设置等等。 图2 2 空调控制系统功能结构 2 3 控制系统软件开发平台 应用系统的开发包括硬件和软件两个部分。在这里我们重点要讨论的是软 件部分,主要是控制系统软件开发平台的构建。 为了能有效连接现有产品开发体系,开发平台所面向的目标系统既可以是 无需嵌入式操作系统的控制系统,也可以是采用嵌入式处理器并配备嵌入式操 作系统的控制系统。平台的组成框架如图2 3 所示。 由图可见,开发平台包括系统设计工具、快速开发工具、应用组件库、编 译连接工具以及调试下载工具等【“。快速开发工具在整个开发平台中起着非常 重要的作用,既是系统设计的具体实现工具,同时又要与应用组件库协同工作。 应用组件库作为系统设计工具以及快速开发工具的支撑工具,与两者的关系十 分紧密。之所以要构建这样一个应用组件库,主要是从提高设计复用性和系列 产品的开发效率这一角度出发,从现有产品中提炼出或新增具有相对独立功能 的各种软件模块并以组件的形式存入控制系统开发平台的应用组件库中,从而 通过快速开发工具达到快速组装、定制的目的【5 【10 1 。 图2 3 开发平台组成框架 圈2 4 基于组件库的软件系统快速组装过程 当完成了应用组件库的构建后,或者说当拥有了一定规模的组件库后,就 可进行基于可复用组件的软件开发【4 】【”。基于可复用组件的软件开发人员的任务 不是从头编写程序代码,而是按照应用系统架构确定本系统需要哪些可用组件, 根据本系统的特殊需求对组件进行特殊化,通过从组件库中选取恰当的组件根 据需要进行修改以及对本系统的专用构件开发,然后将系统架构、通用组件和 系统专用组件组装成一个完整的系统,具体开发流程如图2 4 所示 2 1 】。 第三章空调控制软件结构与特点分析 3 1 当前空调控制软件的开发现状 目前,国内部分空调企业的控制软件的丌发过程存在不少问题,软件的复 用性差,软件开发平台和开发工具应用较少,功能较为简单。有些企业开发的 空调控制系统还是采用的单片机加汇编程序的开发模式,控制程序功能模块的 可重用性不高,导致针对每个不同的产品,需要投入大量的设计、开发、测试、 维护的人力物力,无法应对空调产业产品作为多种产品链状集成开发的特点以 及快速更新的市场需求,这就导致了产品的成本增加、竞争力下降。这是国内 空调生产企业面临的一个巨大挑战。 总结起来,目前国内空调控制软件的开发具有下列不足之处: 控制软件的可重用性差:不少控制程序是利用汇编语言编写的,模块化程 度低,没有做到数据与程序的有效分离,各功能模块之间的关系模糊; 可移植性差:由于不同型号的产品可能采用的空调控制芯片不同,同样的 控制算法或控制程序,在每种机型上都必须有单独的实现,导致了控制软件的 可移植性减弱,这就导致产品的更新或升级需要耗费大量的时间和精力; 控制软件的标准化程度低、软件文档不规范:不同的生产商之间甚至同一 生产商不同型号的产品之间,控制软件结构差异太大,没有一定的软件标准, 制约整个行业的发展;而且控制软件的文档不齐全或者不规范,导致后期的维 护和故障处理难度增加; 开发人员专业化程度低:部分企业的控制软件开发工作,是由硬件设计人 员或电子电路开发人员完成的:在开发的过程中,开发人员往往只关注各种控 制功能的实现,而没有从软件工程的角度来设计和开发整个控制软件,导致软 件结构模糊、模块关系复杂,这也是制约控制软件开发水平的一大重要因素。 本课题提出的快速开发工具,就是对解决上述问题的一次努力和尝试。 3 2 采用快速开发工具的重要性和意义 随着技术发展和市场竞争的加剧,系统和控制的多样性开发与产品市场周 期的逐渐缩短产生的矛盾日渐显现,面向用户和市场的快速开发理念势在必行。 本课题正是解决这一矛盾的开发方案。 相对于专业技术而言,一个完整的空调系统可以粗略的分为机械系统( 包 上海火学硕二】= 学位论文 括空调系统、工民建筑、机械设计等) 和控制系统( 包括电子系统、计算机、 控制理论等) 两大部分。传统的开发模式要求专业技术人员能够在两个领域内 游刃有余,这就对专业技术人才提出了较高的要求,而这需要培训与实践的长 期磨合,开发费用与人力投入也是大量的。这一问题已成为技术开发的一个瓶 颈问题。 快速开发工具的设计思路就是要通过模块化的软件设计,在空调机械系统 和控制系统两个环节之间建立一个具有友好人机界面的快速开发平台( 如图3 1 所示) 。该平台在模块化软件设计过程中,充分考虑到各模块功能的独立性和可 移植性,以便于维修、改进,并且适用于来自系统检测人员的反馈以及增强, 保证一定的可扩展性。利用这一工具,在新型控制技术的开发使用中,通过几 个模块的空调特性参数和控制规则、控制流程的变动启动自动软件生成,从而 极大的缩短技术人力和开发经费的投入以及产品的研发周期,使得产品在市场 竞争中占得先机。 图3 1 快速开发工具应用层面图 3 3 空调控制软件的结构分析 传统的利用汇编语言进行开发的模式,已经无法满足目前的开发要求。因 此,我们利用i d e f o ( i n t e g r a t i o nd e f i n i t i o nf u n c t i o nm o d e l i n g ,综合定义功能 建模) 方法 ” 1 4 3 对控制软件的功能模型进行了深入分析,并整理出了一个普遍 合适的空调控制软件框架。 8 31 d e f 建模方法 由于在对控制软件进行功能建模的过程中,我们采用了i d e f o 的建模方法。 因此,首先对i d e f 建模方法进行简要介绍。 3 3 1 1i d e f 方法简介 传统的分析设计方法包括结构化分析设计法、快速原型法和面向对象方法 等。结构化设计法的基本思想是对一个复杂的大系统进行不断分解、逐层简化, 直到最底层为止。这种方法迄今依然为一种广泛采用的有效方法。快速原型法 和面向对象法只是开发方法或详细设计方法,不是系统分析方法。 i d e f 方法是美国空军在1 9 8 1 年公布的一体化计算机辅助制造( i n t e g r a t e d c o m p u t e ra i d e dm a n u f a c t u r i n g ,简称i c a m ) 工程项目中应用的- - , 0 p 用于复杂 系统分析与设计的方法i j ”,因此该方法又称为i c a md e f i n i t i o nm e t h o d ,简称 i d e f 方法。该方法是在结构化系统分析与设计技术( s t r u c t u r e da n a l y s i sa n d d e s i g nt e c h n i q u e ,s a d t ) 的基础上提出的一种较好的系统分析与设计方法。 作为一种结构化分析与设计思想的严格描述方法,i d e f 方法具有严谨的语义描 述、语法规则和图形化语言。最初,i d e f 方法由三部分组成:i d e f 0 方法描述 系统功能活动及其联系,i d e f l 用于描述系统信息及其联系、建立信息模型、 作为数据库设计的依据,i d e f 2 用于系统模拟、建立系统动态仿真模型。现在 已经有了i d e f 3 、i d e f 4 等方法。 本文将着重介绍用i d e f 0 建立功能模型的建模方法。 3 312i d e f 0 建模方法基本思想及特点 i d e f 0 的基本崽想是结构化分析方法,来源于s a d t 方法。它利用所规定 的图形符号和自然语言,严格的按照自顶向下、逐层分解的方法来描述或建立 系统功能模型,使其主要功能在顶层说明,然后逐层分解到有明确含义和范围 的细节,能充分表达各活动之间的接口关系。i d e f o 建模方法具有准确性和精 确性的优点,使建模者能够全面地描述系统,读者可以正确地理解系统。 c o n t r o ic o r f l r o l n p u “s ) + j ? ! _ 。? ? 。:,i 羽。时p u l s = | 。f u n 硒c 。0 时n :0 r :i j l 二: 刊 。 l 一7 m e c 协m 、十十m e c h a n i s m 图3 2i d e f o 图形表示方法 i d e f o 用严格的自顶向下的方式来构造模型。它从描述系统的概念需求入 上海大学硕士学位论文 手,以系统功能详细描述的完成结束。i d e f 0 图可以使人们全面地描述和理解 整个系统,它适合于大型复杂信息系统的功能模型建立。图33 中4 个方向的 箭头分别代表了一个功能的外部接口和外部环境,方框中的内容代表了功能的 名称。i d e f 0 将一个功能定义为“接受输入( i n p u t ) 并且通过某种机制 ( m e c h a n i s m ) ,在一定的控制( c o n t r 0 1 ) 条件下将输入转化为输出( o u t p u t ) 的 一系列活动的集合”【】2 】【l _ jj 。这些输入、控制、输出和机制( i c o m s ) 用于建立 不同活动之间的联系。输入是活动需要“消耗掉”或转换成输出的东西,可以 是具体的事物、抽象的数据等;控制是指控制活动( 变换) 的约束条件( 环境) ; 机制是指活动由什么来完成,通常是执行活动的人或设备;输出是指变换的结 果,同样可以是具体的事物或抽象的数据 1 5 ) o 任何个复杂的系统都可以通过 这个基本单元的组合来完成。 3 3 1 3i d e f 0 功能模型设计原则 应用方法进行功能模型设计必须贯彻自顶向下的原则。其主要功能需在顶 层说明,然后逐层分解得到有明确范围的细节表示。下一层的子图描述必须和 其父图对应。i d e f 0 提供的规则,保证了如何通过分解得到人们所需的具体信 息。在进行具体的功能分解时,应该遵循以下两个原则 1 4 : ( 1 ) 功能的分解原则:系统功能分解的基本原则是内聚性原则,即子功能 模块的内聚性要强,耦合性要弱。按照软件工程的原则,在将一个系统分解成 若干个子功能模块时,应保证子功能模块的封闭独立性,努力做到模块内的高 度内聚和模块间的松散耦合,即实现子功能模块的独立性、子功能模块内信息 的隐蔽性和接e l 的单一性。 ( 2 ) 功能分解的终止原则:在设计过程中,功能模型的分解终止原则是使 分解得到的活动内容足够详细或可能出现类似功能为止。过大的功能往往意味 着分解得不够,而迸一步的分解必须符合问题的结构,应能说明其独立存在的 意义。 系统功能模型的层次往往能粗略标志一个系统的大4 , 5 n 复杂程度。在功能 结构中,每一层次上的子系统或模块数越多,表明系统越复杂。扇出( 该子系 统或模块直属下级的个数) 过大意味着上一层需控制协调过多的下级,上层难 于控制下层,出错的概率增大;扇出太小意味着该层的分解必要性不大,可直 接进一步划分成再下一级的功能,以减小分解的层数。i d e f 0 规定每层分解的 模块不应小于3 个或者多余6 个。上界6 保证了采用递阶层次来描述复杂事物 时,同一层次中的模块数不会太多,以至于不适宜人的认识规律。下界3 ,保 上海大学硕:仁学位论文 证了分解是有意义的。子系统和模块的规模大小要求适中,从而有利于系统的 设计、开发、调试和维护,并能提高计算机资源的利用效率。系统分解的深度 应该根据具体设计阶段的目的而定。 i d e f 0 方法能够全面和清楚地描述系统的功能活动,数据流以及活动之间 的联系,并且使用简单、易于理解、可以保证设计的规范性,为系统的顺利实 施奠定坚实的基础。 3 3 1 4i d e f 0 建模方法基本步骤 i d e f 建模必须遵循一定的方法和步骤 ” 。如图3 3 所示,首先必须确定建 模的范围、观点和目的,然后以确定的范围作为一个系统,从系统的角度建立 整个系统的内外关系图a 0 图。这个图确立了整个模型的内外关系,确定了系 统的边界,构成了进一步分解的基础。将a o 图分解为3 6 个主要部分,得到 a 0 图。a 0 图表示与a 一0 图相同的信息范围,a 0 图是模型真正的顶层图,它从 结构上反应了模型的观点。a 0 图的结构清楚地表示了a 一0 图的方框所要说明的 含义。比a 0 图更低级的其它图形,说明了a 0 图中各方框( 功能或活动) 所要 说明的内容。同样情况对低于a 0 的图形也成立。 确定建模的范围、观点及目的 塞立统一的内外关系图一一a o 图 l 建立顶层喇a 0 l 建立低层次幽形 i 笃文字说明 图3 3 i d e f 0 建模步骤 | 二解大学颧卜学位论文 3 3 2 运用l d e f 0 方法进行空调控制软件的功能建模 对于空调控制软件来说,由于控制特性的不同,控制对象的不断改变,控 制的流程也必须及时更新及重新组织以便及时适应外部环境的变化,控制特性 的多样性决定了其分析和管理的困难。因此,必须采用种由整体到局部,由 框架到细节的分析流程,以简化分析过程。根据这种思想,在进行控制流程分 析时需着眼于其具有共性的基本特征,采用模块化的功能管理方式,将动态变 化的组织过程应用于相对静态的资源及流程控制要素。 从模块化角度理解复杂控制过程,一般将复杂控制过程按功能执行顺序分 解为若干主功能模块,每个主功能模块构成一个内部功能完整、封闭的结构, 并通过其接口与系统流程中的上、下主模块相连,各主功能模块共同完成复杂 的控制功能。而复杂的主功能模块作为功能完整、封闭的事件也可分解为下一 层功能模块。以此类推,最终复杂控制功能可以由底层的简单功能模块层层实 现,符合一般的思维认识规律。在分析系统时,采用“封装”的概念,只考虑 模块的输入、输出,即转化形式,而忽略模块内部机理以简化思维过程。在重 新组织、更新控制流程时,也可从己分析的系统出发,按新的执行任务对指定 模块进行局部调整,或按新秩序重新执行功能模块,避免了大范围的复杂改动, 确保了控制流程系统的整体稳定性。从而及时更新、组织生产,提高效益、降 低错误率。 系统的功能模块设定应具备以下特点: ( 1 ) 集中管理下层功能模块及模块之间的相互关系; ( 2 ) 模块包含功能全面、完整; ( 3 ) 减少功能冗余,避免重复功能的设定; ( 4 ) 实现各模块的功能独立性。 按照上述的建模思想,在对空调控制特性和功能需求的理解的基础上,我 们采用i d e f 0 方法对空调的控制软件进行功能建模。 3 3 2 1 系统运行环境模型( a 一0 图) 如图34 所示,系统运行环境模型图确定了整个模型的内外关系图以及系 统边界,构成了进一步分解的基础。 上海大学f i 日- i - 学位论文 硬件监源功能靴件 节直: 40 l 标题:控制软什远行环境图 图3 4 系统运行环境模型图 3 3 2 2 系统总体功畿模型( a o 图) 控制模块产生的控制结果,主要包括各种运行状态信息以及故障信息等等。 这些信息是以全局变量的形式存在于控制软件中的。顺序执行的每一个控制模 块,其运行的结果都将反应在这些全局变量中。 例如,用一个结构体( 全局变量) 来记录当前空调运行状态信息,同时记 录用户设定参数: | t y p e d e fe n u 蠖 w s _ c o o l 暑口w s - - h 。e a t , w s _ d e h ? u m z d i f y ,w s m 。v e n t i l a t 。e , w sd e f r o s t ,w s _ s h u t d o w n ,w s u n d e f e l j w o r k i n g s t a c e ;i 作模式类型 p ”罗。鸲雾- s r u 。c t ! t 。2 y s t e n s 。t a t u j s e w o r k i n g s t a tw o r k s t a t e r j 麓话滋。 7 :誉! ? 。_ 蛰? _ 1 攀_ e ;工作模式 , 隆-“凌、int。-i,s,au,t。oru蝎nni;jng;ints s l e e p i、薯”。秘;i ;= 羹孚嚣鍪蛰j 警1 渗攀。| 。 ,i n g f,是否睡眠运转。4 i , 、,:! 、i n t ,i s e m e r g e n c y ;r 。、,是否废急运转, | , v 静,u , :i n ti s l n p r o t e c t i o n ;、 ” 是否保护运行。、 i n t _ i s l n 黔f a u 。l t ; :。 。搿、i ;j 。 i n ti s c o m p r e s s o r o n ; 一i 。n t i s i n t i m i n g ; t 、 i 1 。t j 一一麒;r ” 。, i i s 4 w v o n ? ? , 、b y t eb p r o t e c t i o n t y p e ; 口工n 1 1 1 1 6 。i i 娃d o o r f a n 8 p e e d j 。 b y t e b s e t t e m p j 1 ,是否故障运行“? 。o 艇嚣缩机是否运行 系统是否有定时事件:。 i t 四通阀是否打开 :“1 7 o + z 保护类型 、_ | 室内风机风速、o ? o 设定温度。i _ 类似地,结构体h l d o o r f a n s t a t u s 用来记录室内风机工作状态信息,其结构 上坶大学硕十学位论文 采用这样的方式,系统的数据流向以及控制结果更显得非常清晰和明确。 图3 5 所示为控制软件的总统功能模型图。 图3 5 控制软件总体功能模型图 3 3 2 3 初始化模块功能模型( a 1 图) 初始化模块功能模型图是对a 0 图中“初始化”模块的细分。该模块的功 能主要是处理用户的输入,包括按键信号和红外遥控信号,将其转化成具体的 控制命令和运行参数设置。同时,在系统开机后,还要进行硬件初始化以及各 控制部件的自检、测试。如果初始化失败,将给出故障信息。下图所示为具体 的功能模型图。 l 海大学硕士学位论文 图36 初始化模块功能模型图 3 3 2 4 主功能模块功能模型( a 2 图) 主功能模块功能模型图是对a 0 图中“处理主功能”模块的进一步划分。 该模块主要功能是处理一些定时事件和睡眠控制等,然后当前运行状态及环境 状态进入具体的工作模式( 自动运行、制冷、制热、除湿、通风等) ,并设置相 应状态参数。如果发生故障的话,则给出故障信息。 图3 7 主功能模块功能模型图 通过对a 2 图中a 2 3 节点的进一步分解,可以得到具体工作模式功能模型。 上海大学徊- i :学位论文 如图3 8 所示。该模块主要是根据当前的状态参数和运行时的环境信息,判断 该运行于何种工作模式,并且自动进入到该模式中。对于各种不同的工作模式, 还可以进一步细分,比如制冷模式下压缩机、四通阀、室外风机的控制等等。 细分的方法与此类似,在此不再赘述。 图3 8 具体工作模式功能模型图 3 3 2 5 辅助功能模块功能模型( a 3 图) 辅助功能模块功能模型图是对a 0 图中a 3 节点的细分。该模块主要完成对 室内风机和室内风向电机的驱动控制。由于风速和风向控制是随各种不同工作 模式而不同的,因此,辅助功能模块必须在主功能模块之后运行,即必须在确 定了工作模式之后,才能进行正确的风机和风向控制。 辅助 图3 9 辅助功能模块功能模型图 e 海大学顺十学位论文 3 3 2 6 故障及系统保护模块功能模型( a 4 图) 故障及系统保护模块功能模型图是对a o 图中a 4 节点的细分。该模块主要 是对当前的运行状态参数进行检测并判断是否有故障发生,同时给出运行状态 提示,并保存此次运行的状态参数。 节点:a 4 i 标题:敞障驶系坑保护模块功能模型翻 图31 0 故障及系统保护功能模块功能模型图 3 3 3 空调控制软件框架 通过上述的结构分析可知,空调控制软件采用模块结构,由个主程序和 若干子程序组成。主程序流程见图3 1 1 。主程序通过调用各个子程序来完成所 有的空调控制器功能。其中,初始化单元完成控制芯片端口、控制寄存器、r a m 单元的初始设定工作。测试自检模块完成启动后对空调各个相关功能部件的测 试和自检。红外及按键信号处理模块完成对遥控器信号以及空调面板按键信号 的接受与处理。温度检测模块对室内温度、室内热交换器温度、室外热交换器 温度等进行采样、处理。定时器处理模块完成各种计时工作,主要通过系统时 钟来完成。定时处理模块则完成各种定时操作比如定时开关机以及定时睡眠等 等。主功能处理模块完成制冷、制热、通风、除湿、自动运行等各种工作状态 下的压缩机、室外风机、换向阀的处理。故障应急处理负责空调出现故障时的 各种临时控制操作。室内风机控制模块负责室内风机的启、停及风速控制。室 内风向控制模块完成步进电机在开、关风向、摆风状态、各种定位状态的处理。 输出显示部分完成各种运行状态信息或故障信息的显示。最后保存此次运行状 态信息。 凡口、 钢始化 测试、自救 保存运千亍 状盎信息 红辨信号及按键l 信号赴理 r 一 温度捡测 ( a i d 转换) 二二匕 定时罂处理1 ( 笨统时钟) l 定时处理 ( 定时、睡眠) i 。j 。一 主功能处理 二二工二二 故障应急处理 ,:j 一 宝内烈帆挫制 !l:一 意内风向接制 二二 输l i 】显示 图3 ,1 1 空调控制软件主程序流程 3 4 空调控制软件的特点 通过对空调控制软件结构进行分析,我们可以从中得出空调控制软件的一 些特点: ( 1 ) 控制软件的结构是按照空调控制流程来组织的,基本上具有时序及触 发上的先后关系; ( 2 ) 控制软件以空调运行状态参数及其它全局变量为主线将各功能模块衔 接在控制流程上,控制的结果也反映在这些状态上: ( 3 ) 各功能模块通过自顶向下、逐层分解,模块的独立性、内聚性逐渐增 强,各模块通过输入、输出及模块接口与其它模块进行信息传递。通过这种方 法构建模块,有利于模块替换,为基于组件的快速定制提供了可能前提。 总之,通过对控制软件进行结构和特点的分析,控制软件的框架结构以及 功能模块划分有了清晰的脉络。这是快速开发工具的功能上的需求,也是在进 行快速开发工具需求分析之前必须明确的一个重要任务。 卜海大学硕:i :学位论文 第四章快速开发工具需求分析与系统架构设计 4 1 需求分析 从逻辑上来说,快速开发工具需求分析可以分为两部分,一部分是针对底 层支撑平台的开发或者说是所有其他控制软件的开发都会用到的部分,这部分 属于平台开发需求;另一部分是针对空调控制系统的特性引入了具体的业务逻 辑,这部分归在业务开发需求中,后者是建立在前者之上的。快速开发工具的 功能需求,应该以解决当前控制软件开发过程的缺点和不足为基础;此外,还 必须重点关注空调控制领域的需求,在综合考虑的基础上,提供功能全面、方 便用户使用的软件实现。 41 1 业务开发需求 通过对实际生产和开发过程的研究与分析,我们得知用户对快速开发工具 的功能需求主要提供在以下几个方面: ( 1 ) 模块配置:各控制功能形成独立模块,在快速开发工具中可以根据需 要添加或删除( 导入或导出) 某些特定模块,并提供模块配置界面显示或修改 各种模块信息( 比如包括模块名称、模块i d 、模块常量定义、模块变量定义、 模块包含的各种控制过程的定义等等) ; ( 2 ) 过程定制:提供图形化的过程描述界面,供用户以类似流程图的方式 描述一个控制过程。用户可编辑图中每个子过程的过程名、此过程用到的函数 及变量声明、此过程的代码实现。另外,用户还可以将预先定义好的各种过程 拖动到过程描述图中来,实现快速地过程定制; ( 3 ) 模块文档标准化:根据定义好的模块信息,调用m i c r o s o f tw o r d 的 c o m 接口自动生成标准的模块文档: ( 4 ) 外围寄存器端口配置:对目标板上的外围寄存器端口地址进行配置, 用户可以根据不同的目标板,方便地修改外围寄存器地址; ( 5 ) 快速源代码生成:当过程描述完毕以后,用户可以利用快速开发工具 来生成此过程的代码或代码框架;同样,用户可以将外围寄存器端口配置转化 成相应的源程序头文件; ( 6 ) 源代码编辑:提供一个代码( 文本) 编辑器,方便用户对自动生成的 程序进行查看和编辑。 上街大学硕十学位论文 4 1 2 平台开发需求 快速丌发工具的平台开发需求主要包括以下几个方面: ( 1 ) 项目管理:参照当前一些成熟的软件丌发工具,用解决方案( s o l u t i o n ) 、 项目( p r o j e c t ) 、文件( f i l e ) 的三层逻辑结构来管理用,o 开发过程中所用到的各 种文件; ( 2 ) 插件管理:平台开发中,需要注意的一个重要方而就是平台的可扩展 性。对于快速开发工具来说,就是要具备针对不同控制特性和应用领域的应用 能力。在实现快速开发工具的可扩展性上,我们参考了e c l i p s e 的优秀设计思想, 采用动态发现插件模型体系结构【1 ”。引入插件来解决针对不同应用领域和问题 领域的平台公共特性实现。因此,快速开发工具需提供插件管理的功能,使得 用户可以导入、更新或删除插件。关于插件管理,后文将详述; ( 3 ) 组件管理:组件管理在快速开发工具中主要是指模块的组件化管理, 即用户可以将已定义好的本地模块,通过组件管理界面上传至远程组件库,或 者可以从远程组件库查询和下载已有的组件作为本地模块,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025养殖业养殖合同
- 2025年柑橘销售合同示范文本
- 购进毛料购销合同范本
- 人工翻译合同范本
- 2025废旧物资交易合同模板
- 安装人员聘用合同范本
- 汽车蔬菜运输合同范本
- 场地房租赁合同范本
- 2025汽车销售合同格式范文
- 简易出售商品合同范本
- 供应室提高腔镜器械清洗质量PDCA案例
- 电气控制及PLC应用-定时器、计数器指令介绍
- 100大产业链全景图正式版
- GB/T 22166-2008非校准起重圆环链和吊链使用和维护
- 公共营养师三级模拟题
- GA/T 928-2011法庭科学线形痕迹的检验规范
- 社交网络分析
- (全科医学导论)4-全科医学的教育评价方法课件
- 烧结原料工技师实操考试题库(含答案)
- 大管棚施工记录表
- 石油建设安装工程费用定额
评论
0/150
提交评论