基于聚类算法和行程编码的工业数据报表系统研究与实现
第一章 绪 论
随着信息时代的到来,数据信息的众多问题越来越突出,其在工业生产过程中也占据着越来越重要的地位。作为工业生产系统的重要组成部分,生产过程中的数据报表作用日益被各大企业所看重。工业数据报表同时也是一种浏览信息、分析数据的重要工具[1]。但是,现有工业数据报表系统中的一些问题一直困扰着使用者,,如海量数据的存储、不支持多种数据报表格式、归档查询功能简单不能满足要求等。因此,分析目前现有各种组态及工业报表系统的优缺点,开发适合我国国情并具有通用性的工业数据报表系统是必要的。
1.1 课题研究的背景
目前 DCS(Distributed Control System)系统广泛应用于工农业生产的各个领域,其中服务器端通常采用组态软件进行设计,如国外的 WinCC、Citech、ASPEN-tech;国内的力控、组态王、世纪星等。它们都是在自动控制系统监控层一级的软件平台和开发环境,使用灵活的组态方式,为用户提供具有快速构建工业自动控制系统监控功能的,且具有一定层次的软件工具。其中报表系统是组态软件的一个重要功能,承担着对工业生产过程中产生的数据进行归档、查询,为管理人员提供数据分析依据的重任。但是报表中信息在实际存储中却受到很多限制[2]:报表系统多是组态软件自带的报表工具,当存储数据量过大时,报表系统存储数据仍然是按照顺序进行存储,不对数据进行压缩处理,这样会造成存储空间需求增大,系统运行缓慢等一系列问题。
.......
1.2 课题来源
石家庄桥东污水处理厂是总投资 9.6 亿的省重点项目,也是“河北省利用世界银行贷款河北城市环境项目”的子项目之一,目前已投入运营,使得市区京广铁路以东的城市污水得到了有效的处理。石家庄桥东污水处理厂采用的是国际上领先的网络控制系统,其监测网络拓扑结构图如图 1-1 所示:使用德国西门子公司的网络控制系统来对全厂各个污水处理端口进行检测控制,同时通过厂内光纤环网将采集到的数据进行上传,传送至中控室内,由中控室内的数据服务器进行处理、存储。中控室各个终端采用西门子公司的 WinCC 软件。从图 1-1 中可以看出,整个监测网络结构分为三级冗余结构:(1)一级:现场控制级。现场控制终端采用西门子公司的 PLC S7-300 和 S7-200相结合的监测、控制方式,接受上一级的控制指令,对现场设备进行监测和控制;并将在现场设备监测端口采集的数据进行上传、汇总,送往上一级服务器。(2)二级:现场管理子站。采用西门子公司的 PLC S7-400 作为子站服务器,分别对污水处理厂的进水泵站、鼓风机站、变电站、污泥控制室等 4 大部分的现场设备和仪表进行监测和管理。三级现场控制单元检测采集的数据经过汇总,会集中到各自对应的子站服务器中,等待上位机进行数据交换操作。
.......
第二章 行程编码和聚类算法相结合的数据压缩算法研究
2.1 数据库的数据组织及访问方式
数据库是按照数据结构来组织、存储和管理数据的仓库。随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统,他们都在各个方面得到了广泛的应用。二维表在数据库存储中占有重要地位,因为数据库中多数数据都是存储在像二维表这样的关系表中。当对数据库中数据进行查询时,二维表也是一个基本单位,二维表的结构特点决了二维表在关系数据库中的地位。二维表的行称为一个元组,列称为属性。二维表中的记录数随实体的增减而变化,但字段个数却是相对固定的,因此所有记录的长度都是相同的。二维表之间的数据联系通过一个表的码与另一个表的外码的连接来体现[14]。
.......
2.2 关系数据库的数据冗余与冗余的度量
2.2.1 关系数据库中的数据冗余类型
冗余的存在是运行压缩的条件之一。通常情况下,冗余主要是指数据的重复,包括在时间上、数据量上、空间上的重复。关系数据库的数据重复主要有表的重复、属性的重复、元组的重复等,其具体含义为:(1)为了数据安全的需要制作备份表,当主表被破坏时可用此恢复数据。分布式数据库为减少数据通讯开销也常重复放表,这种数据冗余在这里是必需数据冗余,不能删除。若是因其他原因产生的非必要的重复表则应予以删除。(2)属性重复有不同表的属性重复和同一表内属性重复两种情况:不同表的属性重复常用来建立表之间联系,这只需要一个公共属性,这是必需数据冗余,不能删除;各表间的多于一个的属性应当删除。同一表内有相同属性内容的多个属性,若非数据安全检查的需要,应当删除。(3)表内不同记录内容有时会完全相同,若非必要,应予以删除。元组的重复所引起的数据冗余的消除由记录级的操作完成。上面数据库的重复方式基本相类似,但还有另外一种冗余存在方式。这样的冗余重复在数据库的存储中也占有很大部分,也是数据压缩时经常处理的一种压缩形式。
.......
第三章 工业数据报表系统的功能与实现研究.....32
3.1 工业数据报表研究开发环境及语言 ....32
3.2 工业数据报表总体功能介绍 ........34
3.3 登录功能实现 ........37
3.4 主窗体导航模块功能实现 ....38
3.5 基于聚类算法和行程编码的历史数据模块功能实现 ........39
3.6 基于聚类算法和行程编码的数据曲线模块功能实现 ........42
3.7 基于聚类算法和行程编码的阶段查询模块功能实现 ........44
3.8 基于聚类算法和行程编码的报警查询模块功能实现 ........48
3.9 变量管理模块功能实现 ........50
3.10 用户管理模块功能实现 ......55
3.11 本章小结.......60
第四章 数据压缩算法在报表系统中的应用及测试.....61
4.1 基于行程编码算法的时间标签的压缩 ........61
4.2 基于聚类差分压缩算法的数据库数据元组压缩 ........64
4.3 数据查询解压缩操作 ....66
4.4 本章小结 ........67
第五章 结论与展望.........68
第四章 数据压缩算法在报表系统中的应用及测试
本章将数据聚类压缩算法代入到数据库数据存储压缩中,对数据库中的历史数据及新采集上来的数据进行压缩处理,同时根据数据时间标签的特点,将行程编码压缩算法运用到数据对应时间标签的压缩处理中。
4.1 基于行程编码算法的时间标签的压缩
时间标签作为数据库中历史数据的时间标志,表明了采集的历史数据的时间点,是查询历史数据的一项重要依据,同时工程人员也可通过此项记录来查看过去某一时间点设备运行情况,故障发生时间。若数据按采集时间排列,也就显示出数据的发展趋势,为工艺改进、设备维护、策划管理提供了重要依据。时间标签基本是按照固定时间间隔的时间点,因为时间标签记录的就是采集数据时的时间点,一般来说工业生产过程中数据的采集周期是固定的,可能是 1 s,或是 0.5 s。虽然因为某些原因会使数据采集时间差生微小偏差,但基本不妨碍工程人员从数据中获取信息,因此可以对数据产生的时间标签进行预处理,使得时间标签周期为固定时间,这样就可以把时间标签调整为上一个时间标签和差值组合的形式存储。经过初步处理后,时间标签之间的差值基本为同一数值,只有在采集数据缺失时才会使时间差值为原来的整数倍。由此一来,时间标签之间的相似性就非常大,特别是相邻两个时间标签之间,为时间标签的压缩提供了可能。对于时间标签的这一特性,可以采用较为简单有效的行程编码压缩算法对其进行压缩处。
........
结论
本文的工作是对基于聚类算法和行程编码的工业数据报表系统的研究,在充分考虑系统的功能、成本、实现难易程度的基础上,根据现场调研,获取现场工业查询要求。选择 VisualStudio 2008 作为程序的开发环境,C#为开发语言,利用 Visual Studio 2008 便捷强大的软件开发能力,设计出符合工业要求的工业数据报表,并且采用 SQL2005 作为系统数据库,将工业报表与数据库相连。同时将聚类压缩算法和 RLE 文本压缩算法引入到工业报表数据压缩处理中,减少数据存储所占空间,取得较好的压缩效果。本文的主要工作:
(1)根据现场工业具体功能要求,提出了基于数据压缩的工业数据报表系统研究方案,并对整个工业数据报表进行了详细的设计。在 Visual Studio 2008 编程环境下,采用 C#语言,对工业数据报表进行了实现,设计出具有历史数据查询、曲线查询、变量管理、用户管理等满足工业需求的报表工具。
(2)对历史数据库数据特性进行了分析,介绍了聚类压缩算法的优点和它的整体运算流程。采用排序的方式进行分组及选取中心元组,可有效的降低对孤立点的敏感度,且具有有序性和全面性;利用经验规则和代价函数选择最优 k值,较好的减少了测试次数,无需人工干预。确定这两大参数即可完成元组聚类分组。最后进行参照关系的讨论和差分压缩处理。进过上面一系列步骤,可以对数据库中数据进行较好的压缩处理。同时针对时间标签的特性,对行程编码压缩算法也进行了详细研究。
(3)将经过讨论、优化的聚类压缩算法和行程编码压缩算法结合起来,引入到工业数据报表系统的数据库数据压缩中。用行程编码压缩算法对时间标签进行压缩;聚类压缩算法对数据库中数值数据进行压缩处理,通过这两种压缩算法的相结合,可以对数据库中数据进行良好的压缩处理。并且在数据查询时可达到较快速的解压缩操作。
............
参考文献(略)
本文编号:38662
本文链接:https://www.wllwen.com/wenshubaike/lwfw/38662.html