InterPSS项目介绍

1.1 InterPSS 项目背景

在过去的十几二十年时间内,Internet互联网技术蓬勃发展,成为了人们开发的信息建立和交换的最大中间平台。许多全球性的大型企业已运用Internet及Java、Xml等相关技术来建立领先的、灵活的信息交流系统。与此同时,互联网技术也正被用于改进传统的电力系统仿真软件开发过程。InterPSS正是得益于互联网技术的开方式电力系统仿真软件。

InterPSS——An Internet Technology-based Open-source Power System Simulation System,被认为是新一代开源电力系统仿真软件系统,灵活性和扩展性是其软件系统的重要特征。它是由居于美国、加拿大和中国等国家的志愿者通过互联网作为虚拟开发平台,通过电子邮件、即时通讯软件、论坛等共享和交流信息,相互协作开发的,同时任何人都可以成为其志愿者来参与InterPSS的调试与开发工作。

1.2 InterPSS的设计思想

在现代电力系统当中,电力系统仿真软件已经在分析、设计和运行等领域被广泛利用。而发生在美国、英国以及意大利的大规模停电事故也加速了高端计算机和网络技术在电力系统领域的发展。现在市场上被大规模运用的许多商用电力系统仿真软件大部分是基于Fortran语言和C语言这些面向过程的编程思想来开发的。而众所周知,面向过程的开发流程存在严重的致命伤,即维护、扩展困难,开发难度大,难以适应多核、云计算等新计算发展方向。因而有理由相信,这些过时的技术和系统最终将被一些现代的、更利于利用互联网的面向对象程序设计语言(如Java,Net/C#等)所开发的新系统所取代。InterPSS正是尝试着运用Java编程语言来构建这样一个全新的电力系统仿真软件。由于Java运行环境(JRE)适用于多个平台,因此InterPSS也可以在包括Windows,Linux以及Unix等多种平台上运行。

1.3 InterPSS系统结构

InterPSS的系统结构图如下:

图1-1 InterPSS的系统结构图

在InterPSS结构的核心部位是该电力系统仿真软件的框架,这个框架是建立在一个面向对象的电力系统仿真模型基础上的。UML用于建立用于仿真的电力系统模型,而Eclipse EMF用于为仿真框架生成源文件代码。InterPSS的设计目标是成为一个灵活的可扩展的软件系统。通过志愿者们的大量努力,也源于InterPSS本身具备的开源系统特性,易于维护也成为了InterPSS的一项重要特质。InterPSS的仿真算法,图形用户界面,输入输出接口模块以及集成接口,这些都以InterPSS插件的形式来实现,如此一来,自定义和替换这些内容的工作也会变得相当便捷。InterPSS的组件是依赖于Spring Framework来配置或集成的,而开发团队一般运用Eclipse IDE和NetBeans IDE来进行开发的工作。

InterPSS的基础是一个包含了一个电力系统仿真对象模块和一系列接口的电力系统的仿真框架,在框架外部可以通过这些接口来与InterPSS的核心仿真引擎来相互作用交换信息。该框架是以松耦合的方式来设计的,这样一来,核心仿真引擎就能够非常方便地被扩展,或是以一个独立组件的形式集成到其他的仿真系统当中。

通常来说,每一个电力系统仿真软件都具备一个固定的格式用于创建数据文件作为输入信息,可InterPSS并没有,替代的是InterPSS核心仿真引擎拥有自己的Java API文件,它提供了一系列我们称之为输入文件适配器的插件,用于将特定格式的输入数据输入到InterPSS当中。同时,用户也可以很方便地开发自定义文件的适配器来将用户自身的数据以自己特有的格式导入到InterPSS当中。

1.4 InterPSS的各版本

1.4.1 桌面版

图1-2 InterPSS Editor软件界面

与大部分电力系统仿真软件类似,InterPSS提供了基于图形界面的桌面版本。目前, InterPSS桌面版—InterPSS Editor提供了潮流、短路和暂态仿真计算功能,并可以通过单线图实现图形化的数据输入。支持脚本的自定义控制和模型自定义

下载地址为:http://sourceforge.net/projects/interpss/

1.4.2 云计算版

如1.3小节所介绍,InterPSS具有松散的架构,其建模和仿真核心可以被移植到其他平台或系统中。在2010年,InterPSS团队成功将InterPSS的电力系统建模和仿真内核(InterPSS Core)移植到Google的云计算平台——Google App Engine(GAE),搭建了第一个基于云的电力系统仿真平台——InterPSS Cloud Edition http://cloud.interpss.com/

1.4.3 开发者版

我们把InterPSS的电力系统建模、仿真内核(InterPSS Core)和APIs及通过Eclipse等开发环境搭建的开发平台,称为开发者版。该版本允许用户具有最大的自由度,可以实现自定义扩展。但同时,对用户的编程能力和对InterPSS的了解和理解也是较高的要求。

本开发教程的其中一个出发点和目标,就是通过一些具体的应用例子或简单的范例,帮助用户了解InerPSS API和内部的一些技术特点,更好地利用该平台进行相关的仿真和研究。