基于iHistorian 煤矿实时历史数据采集的设计
王飞,李世银**
作者简介:王飞,(1986-),男,研究生,.NET 软件开发
通信联系人:李世银,(1971-),男,教授,博士生导师,网络拥塞控制、矿井通信与监控、煤矿信息化.
E-mail: lishiyin@cumt.edu.cn
5 (中国矿业大学信电学院,江苏 徐州 221116)
摘要:目前煤矿中积累了大量的历史数据,为了有效利用这些数据,本文利用ASP.NET 技术作为分析平台,设计了基于iHistorian 的煤矿历史数据采集分析系统,给出了其软件体系结构,并对ASP.NET 与iHistorian 相结合的关键技术进行了详细描述。结果表明利用ASP.NET 来分析煤矿历史数据,是可行的和有价值的。
10 关键词:iHistorian;ASP.NET;历史数据
中图分类号:TP
Design of Mine Real-time historical data collected based on
iHistorian
15 WANG Fei, LI Shiyin
(China University of Mining and Technology information and electronic college,
JiangSu XuZhou 221116)
Abstract: At present, a large number of historical data are accumulated in coal mine, in order to
effectively use the data, this paper use ASP.NET technology as a analyzes platform, and designed
20 a Mine Real-time historical data collected system based on iHistorian. Besides, the paper gives its
software architecture. The key technologies of ASP.NET and iHistorian combination are described
in detail. The results show that using ASP.NET to analyze Mine historical data is feasible and
valuable.
Keywords: iHistorian; ASP.NET; historical data
25
0 引言
无与伦比的企业级数据采集、存储和检索高速数据采集和检索——每秒超过20000 事件
的持续存储和检索,iHistorian 能够为信息采集、存储和检索提供无与伦比的性能。超效的
数据压缩——采用高效数据压缩算法,iHistorian 将存储的数据压缩到只占磁盘极小空间,
30 平均每个数据值只占3 个字节。丰富的数据类型—— iHistorian 能够采集多种数据类型的数
据,包括数字、字符串和二进制对象(例如文档、图像和其它文件)[1]。
iHistorian 为所有数据点建立索引,并可通过产品代码和其它数据值实现数据检索,大
大简化生产过程中或不同生产阶段数据的比较和分析。iHistorian 可存储和检索包括插入值、
平均值、最大值、最小值和标准偏差在内的计算值[2]。目前煤矿中大量而繁琐的数据,为
35 iHistorian 提供了良好的应用平台。
1 iHistorian 系统
iHistorian 是一个高性能的数据归档系统,用来有效地采集、存储和检索任何基于时间
的信息。iFix 采集器从数据源收集信息,如图1 所示。采集完信息之后,iFix 数据采集器(通
过iHistorian API)把信息送到iHistorian 服务器。该服务器再把信息压缩并存储在归档数据
40 库里。这个归档数据库的每个文件都代表了一个特殊时段的历史数据。
所有客户的申请将通过iHistorian API 来检索被归档的数据。iHistorian API 是一个客户
端/ 服务器程序设计接口,不仅保持了和iHistorian 服务器的连通性,同时还给分布式网络
环境中数据的存储和检索提供了相应功能。
Web Admin
IIS
SDK软件开发工具包
API
Local Admin
iFix 采集器
Local Admin SCADA
SDK软件开发工具包
.NET C#
45 图1 iHistorian 系统
2 技术支持
2.1 实时历史库
iHistorian 作为企业级实时历史数据库平台,可以在高速采集、归档并发布大量实时的
50 现场过程信息。iHistorian 不论在性能、实用性及功能上都代表了企业级历史数据采集和管
理的最先进水平。可以无缝的集成任何一种HMI/SCADA 应用,iHistorian 可以应用于任何
一种生产环境,包括可以从OPC,IFIX,FIX,甚至CSV 和XML 文件上获取数据,iHistorian 可
以在任何已有的数据平台上增强数据采集功能[3]。
2.2 .NET 技术
55 iHistorian 软件开发工具包(SDK)是一个COM 对象,旨在简化访问iHistorian 服务和
应用开发的目的数据。本文选用.NET 作为软件开发平台。.NET 是微软新开发的大型分布式
系统平台,其核心组成部分是.NET 框架,.NET 框架类型符合CLS。只要这种语言的编译器
符合公共语言规范,可以使用任何编程语言进行开发。同时.NET 平台上 的数据交换采用可
扩展标记语言XML 作为标准格式,具有跨平台特性。因此.NET 技术非常适合企业大型信
60 息管理系统的开发[4]。
2.3 iHistorian 数据采集器
iHistorian 数据收集的核心就是采集器(Collector)。采集器自动采集已配置的数据点。本
文选用iFix 采集器,该采集器具有以下特点[5]:
可从任何iFix SCADA 节点,或者通过FIX 网络上的SCADA 节点采集数据。此采集器
65 依托业界领先的iFix,通过大量已有的驱动程序和易用的驱动程序开发工具,用户可以连接
的数据源是非常广泛的。重算专家能够简便地执行计算或更新原有的存储结果。
3 系统设计
根据前文分析及技术支持本文将设计出基于iHistorian 的实时历史数据采集分析系统,
该系统用于对煤矿实时数据信息的查询和分析。
70 3.1 系统设计要求
煤矿中存在的大量的信息中,用户希望可以选择任意信息的任意一个模拟量采集点,当
点击查询便可以列出单个模拟量采集点每天的最大值、最小值、平均值、最大值发生时间、
最小值发生时间。这样易于用户对每天实时信息数据情况的把握,并可以与历史数据进行对
照,从而能更快的发现问题,解决问题。
75 3.2 .NET 软件体系设计
根据设计要求本设计采用ASP.NET 作为该系统的开发平台,对历史实时数据进行查询
分析,整个系统的框架如图2 所示。
客户端通过IIS 的发布对系统进行数据信息的查询分析,iHistorian 获取iFix 采集器采
集的信息,并通过web.config 和定义的一个DataConnect 函数与ASP.NET 进行信息之间的
80 交换[6]。其中在ASP.NET 后台程序编写时可采用基础的SQL 查询语句(如数据的最大值用
select max(信息) from ),但需要调用DataConnect 函数,从而实现与iHistorian 数据库
的连接[7]。web.config 与DataConnect 函数定义如下:
图2 系统框架图
85
(1)在web.config 下编写如下代码
<connectionStrings>
<add name="IHConnectionString"
connectionString="Provider=IhOLEDB.iHistorian.1;Persist Security Info=True;User ID='';Data
90 Source=服务器IP;" providerName="System.Data.SqlClient"/>
</connectionStrings>
(2)自定义的DataConnect 函数,执行与iHistorian 数据库连接。
public DataSet DataConnect(string cmdtext)
{
DataSet ds 95 = new DataSet();
System.Data.OleDb.OleDbCommand olecmd = new OleDbCommand();
System.Data.OleDb.OleDbConnection olecon = new
OleDbConnection(ConfigurationManager.ConnectionStrings["IHConnectionString"].ConnectionS
tring);
100 try
{
olecmd.Connection = olecon;
olecmd.CommandText = cmdtext;
olecmd.Connection.Open();
105 System.Data.OleDb.OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = olecmd;
olecmd.CommandType = CommandType.Text;
da.Fill(ds);
}
110 finally
{
olecmd.Parameters.Clear();
olecmd.Connection.Close();
}
115 return ds;
}
说明:其中(1)表示与服务器连接;(2)表示与服务器的iHistorian 数据库连接。关
于iFix 采集器只需要安装在服务器上,客户端只需要通过服务器上发布的IIS 即可访问。
3.3 设计结果
120 1) 根据设计要求,在ASP.NET 平台下设计出用于查询矿井任一子系统下单个模拟量
采集点的数据信息,包括信息的最大值,最小值,平均值以及发生最大值和最小值的时间,
如图3 所示。
图3 模拟量历史数据
125
2)为了更加直观的了解信息和信息发生的时间,本设计在每个采集点对应的信息后设
置了“详情”字段如图3 所示,点击对应曲线链接之后,会弹出一个当日的曲线图页面框,
如图4 所示。
130 图4 模拟量历史数据曲线
4 结论
煤矿中积累的大量的数据信息的背后隐藏着许多重要的信息,本设计凭借iHistorian 获
取iFix 采集的信息,并以ASP.NET 作为设计平台,对相应的数据进行处理和分析,经调试
135 以上系统可用。由于该系统采用.NET 开发平台,使用模块化的组织方式,整个系统具有良
好的交互性、可用性和扩展性,有利于系统的维护和升级。
[参考文献] (References)
[1] 樊源泉, 张志鸿. iHistorian 实时数据库访问构件的设计与实现[J]. 计算机工程与设计,2010.
140 [2] 谭建豪,章兢,黄耀,胡章谋.数据挖掘技术[M].中国水利水电出版社,2009.
[3] 屈元子,李茹. 基于数据仓库的煤矿历史数据分析[J]. 电脑开发与应用,2008.
[4] 许春杰.深入浅出C#[M].人民邮电出版社.2001。.
[5] 赵志刚. IFIX 中实时数据的历史报表实现[J]. 科技情报开发与经济,2009.
[6] 余兵,殷连刚.iFix 中实现Excel 制作报表的实例[J].制造业自动化,2003.
145 [7] 杨华蓉,徐继燕.基于iFIX 的煤矿综合自动化监控系统设计与实现煤矿机械[J],2006.
学术论文网Tag:代写毕业设计
|