(中铁第一勘察设计院集团有限公司 陕西西安 710043)
摘要:随着我国城市规模的不断扩大,城市核心区域间的交通需求越来越大。市域铁路由于其自身具有“高密度、小编组、公交化”的特点成为了解决这一交通问题的有效措施。由于,在线列车数量多启制动频繁,传统的手工算法不在适用。因此,利用交流牵引供电系统仿真软件对系统进行设计势在必行。首先,本文阐述了软件设计的整体思路。其次,描述了软件执行的算法流程。最后,以Visual Studio平台利用C++语言开发了市域铁路交流牵引供电软件。
关键词:市域铁路、供电仿真、软件开发
0 引言
在电气化铁道迅猛发展的背景下,一大批新型技术得以广泛应用[1]。其中,计算机仿真技术具有方便、灵活等特点,在铁路设计及运营部门被广泛使用。市域铁路由于站间距小,在线列车数量多,启制动列车间的功率传递复杂,传统的手工算法不在适用。因此,利用交流牵引供电系统仿真软件对系统进行设计势在必行。因此,开发相适应的仿真软件,具有重要意义。在此基础上对各种供电方式、列车运行方式做仿真研究,可以为铁路设计部门在方案选择上提供依据,同时可以对运营部门在不同行车安排下提供有效预测。
1软件基本框架
本文以Visual Studio为开发平台,利用C++语言采用面向对象的程序设计方法,开发了可以运行于32/64位Windows操作系统的交流牵引供电系统仿真软件。
供电计算首先要根据行车部门提供的列车追踪间隔平铺生成运行图,然后结合牵引计算获得各仿真时刻全线所有列车的位置、取用功率等信息,在搭建好的牵引供电系统基础上仿真获得整个系统各个时刻牵引网上的电压电流信息、牵引所输入输出等所有系统信息软件的设计流程图如图1所示。
图1 软件设计流程图
2 仿真计算模型算法
从市域铁路牵引供电系统的电能由电力系统变电所经输电线送至牵引变电所,牵引变电所将三相电变换为电力机车可用的单相电,通过牵引网供给列车使用,最后经钢轨、大地等回流路径至牵引变电所形成闭合电路。通过以上对市域铁路牵引供电系统的电能传输路径分析可知,对市域铁路牵引供电系统的建模即对牵引变电所、牵引网、牵引负荷的建模[2]。
软件根据根据连续线性潮流算法[3~4]进行网络求解,软件具体实现流程如下:
Step1:求解牵引网模型各切面的电流向量
牵引网模型的各切面可以划分为三种:牵引所端口切面、列车切面、普通切面。以单线直供带回流的供电方式为例,各切面的电流向量均为4维,从上至下依次代表:接触线、钢轨、回流线、地线。
Step2:求解电压向量
以步骤1中求得的各切面的电流向量形成n×m维电流向量
,其中n为切面个数,m为各切面向量维数。利用式(1)求解电压向量,电压向量
维数与电流向量相同,以切面电流向量维数m划分电压向量
可得各切面的电压向量。
(1)
Step3:更新电流向量
根据步骤2可以求得各节点电压,考虑列车为功率源,更新列车电流及牵引所端口电流。
Step4:判断各节点电压是否收敛
当电流向量更新为
后,可以根据式(1)计算出电压向量
,从而得到更新后的各节点电压
,迭代误差
计算如式(15)所示:
(2)
当迭代误差
大于收敛精度
时,进入步骤3,继续进行迭代计算。
当迭代误差
小于收敛精度
时,停止迭代,
即为节点电压向量。
3软件程序设计[5]
本文软件的设计是基于MFC的文档视图结构,文档类中保存了整个模块的数据,视图类则方便与用户的良好交互。从图1所示的供电计算模块设计流程图中可以看出,供电计算模块的设计分为三个模块:输入、输出和计算。
3.1 输入输出模块设计
供电计算模块的运行是建立在牵引供电系统各个元件的数学模型基础之上的。因此,供电计算模块的输入设计即为对系统中各类元件的设计,从交互式设计的角度来看,这些类中有的需要图形化显示以方便用户操作,有的只是用来保存数据。
系统中具有图形化显示的类包括有:牵引所类(CTractionSubstation)、分区所类(CSectionPost)、AT所类(CATSubStation)、列车类(CTrain)、系统参数类(CSystemParameter);另外一种仅需保存数据的类不继承自任何类自身即为基类,包括有:外部电源类(CPowerGridSource)、牵引变压器类(CTractionTransformer)、牵引网类(CTractionNetwork)两种元件类的主要成员变量分别如2、图3所示。
图2 无图元元件类
图3 有图元元件类
在与用户的交互方面,软件在程序主框架中设计了“属性窗口”,牵引供电系统中的每个元件的所有属性都可以通过属性窗口显示和编辑。系统中的所有元件的属性被保存进元件类所生成的对象中,当用户选择保存时,这些信息将被序列化保存到工程文件中。
相比于牵引供电系统中的各类元件,牵引网的信息复杂繁多,包含了各类导线的线材、空间位置等。如果依然采用“属性窗口”的形式与用户进行交互会造成信息繁杂不直观的现象,同时此类窗口显示的方式单一难以达到清晰直观的输入效果。因此,对牵引网的信息输入采用对话框的形式,其优点是可以任意排布信息编辑框的位置,同时还可以完成绘图等功能。由于对话框类对象的生命周期仅为对话框活动期间,难以将用户编辑输入的信息及时保存,因此在软件中设计了以下三个类:牵引网类(CTractionNetwork)、刚性牵引网类(CRigidTractionNetwork)、柔性牵引网类(CFlexibleTractionNetwork)。
从数据流动的角度,文档类对象是输入数据的集中处,因为在MFC的框架体系中,文档类的生命周期仅次于程序类,在文档活动期间其中保存的任何数据都可以与其他类进行交互。因此,文档类可以看成是数据管理最顶层的类。
3.2 算法模块设计
软件的算法模块设计定义了一个类(Algorithm)即算法类,它是整个程序的核心,主要完成牵引网链式电路的建模和连续线性潮流计算,求解整个网络的电气参数,其设计思路为如图2所示的网络求解流程图。
算法类的交互对象为文档类(CACSimDoc)和仿真结果类(CSimResult)。首先,通过用户点击菜单栏中的仿真条件设置,调用文档类中的消息响应函数OnSimCondSet()从而获得用户设置的仿真条件,如单次计算或动态计算等;然后,算法类调用ReadChart()函数,将牵引供电系统结构图中的各元件读入并保存进文档类中;接着,通过调用算法类中的Prepare()函数完成牵引网链式电路的搭建;最后,执行算法类中的RunCalcul()函数完成潮流计算获得整个网络的解。算法类中的函数调用关系如图4所示。
图4 算法类执行流程示意图
4 结论与展望
本文以Visual Studio为开发平台,建立了牵引所等值电路模型及牵引网链式电路模型,利用连续线性潮流算法(SLPFM)对牵引供电系统进行求解,在以上理论基础上开发了交流牵引供电计算软件。
软件采用模块化处理,对供电计算部分划分为输入、算法、输出三个模块,软件后期维护方便,代码可读性强。从功能角度,可以完成直供、直供带回流、AT供电三种供电方式下的单复线仿真计算。软件的架构模型具有良好的拓展性,将来可以在此基础上进行二次开发,进一步完善和丰富软件功能。
参考文献
[1]闵国水.关于市域铁路系统制式选择的探讨[J].中国铁路,2014(12):27-31.
[2]李群湛,贺建闽.牵引供电系统分析[M].成都:西南交通大学出版社, 2012.
[3]刘玲. 牵引供电系统静止无功发生器研究[D].西南交通大学,2012.
[4]吴命利.牵引供电系统电气参数与数学模型研究[D].北京:北京交通大学,2006.
[5]刘瑞龙. 市域铁路交流牵引供电仿真研究[D].西南交通大学,2018.