欢迎来到天天文库
浏览记录
ID:36781398
大小:378.37 KB
页数:3页
时间:2019-05-15
《基于Delphi的电力调度生产管理系统设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、维普资讯http://www.cqvip.com第23卷第1期电力科学与工程Vo1.23,No.1522007年3月ElectricPowerScienceandEngineeringMar.,2007基于Delphi的电力调度生产管理系统设计与实现李娟(华北电力大学能源与动力工程学院,河北保定071003)摘要:介绍了电力调度生产管理系统的各个功能模块。对保障整个系统稳定运行的关键部分一SCDA模块的具体实现进行了详细介绍。详述了利用SPComm控件和多线程技术来对SCADA数据进行接收处理,以及对二次数据的处理等,保证了SCADA数据接收的实时性、准确性,
2、以及整个系统的稳定运行。关键词:调度:SCADA;多线程;Delphi;SPComm控件中图分类号:TP317文献标识码:ADelphi是新一代可视化开发工具,它具有功能强0引言大、简单易用和代码执行速度快等特点。同时,由于Delphi支持单机的dBase,Paradox数据库和在开放的电力市场环境中,输电网络的拥塞管流行的关系数据库,如Oracle,Sybase,SQL理是电网调度人员所面临的新课题。提出一种新的Server等,因此最后形成的系统可以在单机、Net-调度方法,并在此基础上,开发出能够真正方便地ware网络文件共享方式C/S条件下运行,从而扩用
3、于实现电力调度生产管理系统的应用软件,建立大了系统的使用范围。开放环境下的输电服务竞争机制,帮助解决网络拥1.2后台数据库的选择塞问题,是电力企业安全生产的重要技术任务。伴本系统要存储的数据量比较大,因此采用大型随着电网规模的发展和电网的互联,电力系统调度的关系型数据库ORACLE。ORACLE数据库是一任务由简单到复杂,由一级调度到多级调度,形成个通用的数据库系统,也是一个关系数据库、分布了集中或协调一致的分级管理体系。调度负责领导式数据库。电力系统内发、输、变、配电设备的运行、操作和事故处理,以保证电力系统安全经济运行,向用户2系统中SCDA模块的实现有计
4、划地供应符合质量标准的电能。本文以河北省高碑店电力公司电力调度生产管调度系统实现的关键是对SCADA实时数据的理系统的开发为例,介绍了电力调度系统的开发过接收处理,要求接收数据的准确性和实时性。下位程,以及其中所用到的一系列开发、应用技术。机将各变电站上报的数据通过通信线传到串口服务整个系统按照功能主要分为4个模块⋯:调度器,串口服务器完成RS-232格式和以太网传输的电网运行管理模块、调度电网方式管理模块、自动IP包之间的数据转换,转换后的数据通过网络传化系统管理模块、电网运行数据管理模块。送到调度服务器,调度服务器处理得到实时数据库、历史数据库信息,在此基
5、础上,分析汇总得到1系统开发方案的选择二次数据库,为系统其他模块提供数据源。目前,利用Delphi实现串口通信常用的方法1.1系统开发工具的选择有3种弘:利用控件、使用API函数和调用其他在本系统中,采用了Delphi来编写系统程序。串口通信程序。本系统用SPComm控件编写,利收稿日期:2006—10-11.作者简介:李娟(1981一),女,华北电力大学动力工程学院硕士研究生维普资讯http://www.cqvip.com第1期李娟基于Delphi的电力调度生产管理系统设计与实现用多线程技术来实现对数据的接收处理。2.1多线程的实现由于上行数据量大,同时要求
6、实时性比较强,所以采用多线程技术编写这一模块的代码。系统中主线程用于接收数据:在打开每一个站的COM口时便动态创建一个对应的数据处理线程,对接收过来的数据进行解包处理,将处理结果存入对应的数据表中;同时对各站保存的数据进行统计分析,生成可提供给其它模块使用的数据。程序中应用多线程的结构说明如下:constructorTcom7Thread.Create(Suspend:boolean);//线程创建;图1SCADA数据接收界面beginwith(Darray[index]asTcomm)doinheritedcreate(Suspend);beginFreeo
7、nterminate:=true;/线程中止时自动清除线程对InxXonXoffFlow:=false;//设置控件的相应属性;—象;self.OnTerminate:=myTerminate;/线程中止时触发(Darray[index]asTcomm).OnReceiveData:=form1myTerminate事件;CommReceiveData;⋯⋯⋯⋯⋯⋯⋯//线程创建时动态创建控件的代码;endend;.//以下为串口数据接收部分代码;procedureTcom7Thread.myTerminate(Sender:TObject);SetLengt
8、h(arr,BufferLength)
此文档下载收益归作者所有