设计模式在通讯软件中应用.docVIP

  • 6
  • 0
  • 约3.89千字
  • 约 9页
  • 2018-09-20 发布于福建
  • 举报
设计模式在通讯软件中应用

设计模式在通讯软件中应用   摘 要   传统电力通信软件基于结构化软件设计方法,具有扩展性差和难理解的特点,为此提出了基于设计模式的软件设计方法。文中介绍了设计模式的基本概念和使用方法,通过对不同的电力通信软件的研究,找到了一种适合快速开发电力通信软件的设计模式,并在实际开发中进行了验证。软件运行结果表明设计模式在面向对象的软件设计和开发中可以有效的提高直观性和扩展性。   【关键词】变电站通信 设计模式 IEC 61850 面向对象   1 设计模式   软件设计有两种设计方法,分别是结构化设计方法和面向对象设计方法。设计模式作为面向对象软件设计过程中知识和经验的总结成果,具有很重要的作用,可以帮助设计者去分析和解决的问题。   本文主要关注了工厂模式,一个设计模式的描述一般包含模式名、意图、结构、参与者和协作等五个方面。下面结合这五个方面详细介绍工厂方法模式。   1.1 模式名   工厂方法(Factory Method) 模式,又称为虚构造器(Virtual Constructor)模式。   1.2 意图   定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法模式使一个类的实例化延迟到子类。   1.3 结构   工厂方法模式的结构。   1.4 参与者   产品类定义工厂方法所创建的对象的接口,实际产品类实现产品类;接口创建者类声明工厂方法,该方法返回一个产品类型的对象。创建者类也可以定义一个工厂方法的默认实现,它返回一个默认的实际创建者对象。实际创建者类重定义工厂方法返回一个实际创建者类实例。   协作:创建者类依赖于它的子类来定义工程方法,所以它返回一个适当的实际创建者实例   2 电力通信软件的设计方案   传统的电力通讯软件针对具体的通信规约,每个软件只能处理单个的通信规约,造成了巨大的资源浪费并且效率低下。本软件采用通用型规约转换软件方案,在该方案中,变电站内可只有一个通讯软件,该通讯软件负责接入系统中所有智能设备和后台管理系统的信息交换。使用这种通讯软件将大大减少开发规约的工作量,提高了代码的复用率。   根据软件需求分析得出???通信软件应具备3方面的功能。   2.1 系统配置   此功能主要用来配置系统中设备信息、转发信息、通道信息和规约信息。   2.2 数据采集与处理   数据采集与处理系统是通讯换软件实际进行数据交换的地方,但并不进行解析和转发处理。   2.3 数据转换   数据转换就是使得按照系统配置进行配置的不同设备之间能够进行通信,这是通讯软件的核心处理部分。   根据需求分析的结果,该软件的系统结构图如图1所示。   本软件主要有系统配置程序、数据采集系统与处理组件、通讯规约库和中间数据处理组件。其工作思想如下:首先运行系统配置程序,在配置界面进行智能设备和监控系统的信息配置、物理通道配置和规约配置,进行规约配置时需要该规约库实际存在,否则无效,配置完成后运行数据采集处理系统则可以根据系统配置的结果进行数据采集,而智能设备和监控系统数据的交换需要经过中间数据处理组件的转换后才可以进行,而中间数据和具体的规约处理过程在各自的规约中处理。   3 传统设备规约和新型智能设备规约(IEC61850)相互转换的实现示例   3.1 中间数据结构介绍   在103规约向IEC61850转换的过程中,103规约作为设备侧使用的规约,IEC61850作为控制转发测的规约。规约转换的实际过程要借助于中间数据来完成,数据的流向为双向,即103规约可以向IEC61850上送数据,IEC61850也可以向103下发命令。具体的转换过程为103规约将自己采集到的数据转换为中间数据IDevData格式,IEC61850从IDevData中获取自己需要的数据,与此相反,IEC61850将需要下发的命令转换为中间数据ICtrlData格式,103规约从ICtrlData中获得下发的命令并下发到自己的装置上去。至此,103规约向IEC61850规约的转换工作完成。   同时,由于IDevData和ICtrlData为中间数据格式,因此当别的规约需要这些数据的时候也可以获取,这样103就可以不需要针对其他的规约另行开发,直接就可以完成和其他规约转换的工作。   在电力通信软件中存在两种意义上规约,分别是设备侧规约和转发侧规约,而设备侧和转发侧并不进行直接的通信,因此需要一种能够分别和两者进行数据交换的中间数据结构,就是IDevData和ICtrlData两个数据类。   3.1.1 设备数据类   class IDevData   { quint32 cpuCount;/*设备包含CPU数量*/   cpu *Cpus;/*保存设

文档评论(0)

1亿VIP精品文档

相关文档