(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf_第1页
(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf_第2页
(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf_第3页
(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf_第4页
(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机软件与理论专业论文)基于sqlite的组态软件研究与设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 随着工业生产的发展,工业生产过程日趋复杂化,工业控制系统的开发成为 工业生产中一个非常重要的部分。但传统的工业控制系统存在着软件水平不高、 质量不好的问题,因此优秀的开发工具在工业控制系统软件的开发过程中是必不 可少的。组态软件的出现,使得用户可以通过工业控制组态软件,自行经过组态 过程构成其所需要的工业控制系统软件,从而改变了工业控制系统软件的开发方 式。 另一方面,工业生产过程中的监控越来越细致,需要采集的数据越来越多, 组态软件对实时数据库的要求不断提高。工业控制系统中的实时数据库应具有高 实时性、高数据吞吐量、高可靠性等特点,才能够保证工业控制系统的长期稳定 运行。同时,x m l 的发展应用使得企业能够整合整个企业内部的信息资源,为 企业的生产、经营、决策提供数据来源。因此,x m l 技术与实时数据库技术相 结合,有利于促进企业的发展,具有很高的应用价值。 本课题旨在设计一个基于嵌入式数据库的组态软件系统,作者通过对实时数 据库的深入研究,结合了x m l 技术,提出新的实时数据模块的架构。本文首先 分析总结国内外关于组态软件的研究进展与现状,阐述了课题意义所在。然后从 组态软件的实时数据处理与开放性两个方面,对组态软件进行分析与研究。主要 研究了实时数据库s q l i t e 的特性及具体用法,并研究分析资源描述框架( r d f ) 的原理及其作用,继而探讨其在组态软件中的应用。在研究实时数据库与r d f 之后,设计了实时数据模块的主要框架;完成了实时数据模块原型的详细设计并 编程实现。最后,该系统经过测试分析,达到了预期的研发效果。 关键词:组态软件;实时数据库;r d f a b s t r a c t a b s t r a c t w i t ht h ed e v e l o p m e n to fi n d u s t r y , t h ei n d u s t r i a lp r o d u c t i o ni sb e c o m i n gm o r e a n dm o r ec o m p l e x ;t h ed e s i g no f i n d u s t r i a lc o n t r o ls y s t e mi sp l a y i n ga ni m p o r t a n tp a r t i nu s u a li n d u s t r i a lp r o d u c t i o n b u t , t h e r ee x i t sp r o b l e m ss u c ha sl o ws o f t w a r el e v e l a n dp o o rq u a l i t yi nt r a d i t i o n a li n d u s t r i a lc o n t r o ls y s t e m ,t h a ta ne x c e l l e n td e v e l o p m e n t t o o l si si n d i s p e n s a b l ed u r i n gt h ed e v e l o p m e n to fi n d u s t r i a lc o n t r o ls y s m n a n dt h e n c o n f i g u r a t i o ns o f t w a r ea p p e a r s b yu s i n gi n d u s t r i a lc o n t r o lc o n f i g u r a t i o ns o f t w a r e , c u s t o m e r sc a np r o d u c ei n d u s t r i a lc o n t r o ls y s t e m sw h i c hn l e yn e e d ,a n dt h a tc h a n g e t h es t y l eo f d e v e l o p i n gi n d u s t r i a lc o n t r o ls y s t e m o nt h eo t h e rh a n d ,w i t ht h ei n e r e a s e m e n to fd a t ac o l l e c t e db y c o m m a n d ,r e a l t i m e d a t a b a s ew a si n t r o d u c e di n t oc o n f i g u r a t i o ns o f t w a r e r t d bu s e db yi n d u s t i a lc o n t r o l s y s t e ms h o u l dh a v ef e a t u r e ss u c ha sh i 曲r e a l - t i m e ,h i g ht h r o u g h p u ta n dh i g h r e l i a b i l i t y m e a n w h i l e ,t h ed e v e l o p m e n to fx m lm a k e se n t e r p r i s eb ea b l et oi n t e r g r a t e i n f o r m a t i o nr e s o u r c ei n s i d ei t t h u s ,x m l t e c h n o l o g yc o m b i n e dw i t hr t d b t e c h n o l o g yc a nb r i n gv a r i o u sv a l u e sf o rt h ed e v e l o p m e n to fe n t e r p r i s e f i r s t l y , w ea n a l y z et h er e s e a r c hp r o g r e s so nc o n f i g u r a t i o ns o f t w a r et oe x p l o r et h e s i g n i f i c a n c eo ft h i sp a p e r t h e na n a l y s ec o n f i g u r a t i o ns o f t w a r eb yo p e n e s sa n d r e a l - t i m ed a t ah a n d l i n g w em a i n l ye x p l o r et h ef e a t u r e so f s q l i t ea n dt h ep r i n c i p l ea n d r o l eo fr e s o u r c ed e s c r i p t i o nf r a m e w o r k ( r d f ) a f t e rr e s e a r c h i n gr d fa n dr e a l - t i m e d a t a b a s e ,w ed e s i g nt h em a i nf r a m e w o r ko fr e a l t i m ed a t am o d u l e , t h e nc o m p l e t et h e d e t a i ld e s i g no fp r o t o t y p eo fr e a l - t i m ed a t am o d u l ea n di m p l e m e n ti t , w h i c ha c h i e v e d e x p e c t e de f f e c tb yt e s t k e yw o r d s :c o n f i g u r a t i o ns o f t w a r e ;r e a l - t i m ed a t a b b a s e ;r d f 厦门大学学位论文原创性声明 兹呈交的学位论文,是本人在导师指导下独立完成的研究成果。 本人在论文写作中参考的其他个人或集体的研究成果,均在文中以明 确方式标明。本人依法享有和承担由此论文产生的权利和责任。 声明人( 签名) :左云胡够 渺孑年芗月勿e l 厦门大学学位论文著作权使用声明 本人完全了解厦门大学有关保留、使用学位论文的规定。厦门大 学有权保留并向国家主管部门或其指定机构送交论文的纸质版和电 子版,有权将学位论文用于非赢利目的的少量复制并允许论文进入学 校图书馆被查阅,有权将学位论文的内容编入有关数据库进行检索, 有权将学位论文的标题和摘要汇编出版。保密的学位论文在解密后适 用本规定。 本学位论文属于 1 、保密() ,在年解密后适用本授权书。 2 、不保密( 4 ) ( 请在以上相应括号内打“4 ) 作者签名:庄云解弓日期:y & 驴年箩月汐日 导师签名: 争日期渺孑年钼湘 第1 章绪论 第1 章绪论 随着工业控制的发展,工业控制组态软件的功能和架构不断更新,其在生产 企业中的地位也越来越高【l 】。同时,随着生产理念的变化,生产设备的管理和生 产流程的改进已经成为工业生产中重要的主题,这就要求组态软件能够提供对工 业生产中资源的管理以及生产数据采集、压缩等功能。实时数据库技术和资源描 述框架的发展,使得我们可以应用这两种技术来满足工业生产的要求【2 】【3 】。 本章从阐述本文的课题背景入手,结合对当前组态系统发展情况的分析,论 述本课题研究与设计的意义,并在最后总起本文的内容结构。 1 1 课题背景概述 计算机控制系统的发展,使得工业控制的复杂性增加、数量增大,工业控制 系统已经开始走向标准化,构成工业控制系统的可组合化的硬设备已经成型,这 使得工业控制系统的兼容性、可靠性、互换性都大大增加,并且使得系统易于升 级和替换。而工业测控系统软件的开发就显得相对落后,大多数用户和承包商还 需自行开发相应的应用软件,这既延长了开发周期,又由于开发水平参差不齐, 使应用软件水平不高,质量不好,造成了大量低水平的不必要重复。人们认识到, 得力的开发工具在工业控制系统软件的开发过程中是必不可少的,从而出现了一 种新型的系统软件开发工具工业控制组态软件。用户可以通过工业控制组态 软件,自行经过组态过程构成其所需要的工业控制系统软件【l 】。 另一方面,随着企业生产规模的扩大,产品线的延长,企业的生产设备日趋 多样化,生产过程日趋复杂化,这就给工业控制系统带来了一定的挑战。与此同 时,企业为提高生产效率、优化生产过程、充分利用现有的各种资源和设备,对 工业控制系统有了新的要求。企业不仅仅要求工业系统能够监测、控制各种设备, 能够采集生产过程中各种各样的参数数据,还要求工业系统能够和企业的信息管 理系统相连接,以便形成覆盖整个企业的完整的信息系统,以助企业更好、更快 地发展。这一切都离不开实时数据库,工业控制系统中的实时数据库必须具有高 实时性、高数据吞吐量、高可靠性等特点,才能为工业控制系统的长期稳定运行 做出巨大的贡献。但由于实时数据库内部所定义的数据结构比较混乱,导致企业 的其他信息系统难以与其进行数据共享【3 】。 同时,x m l 技术的发展及应用,给企业的信息系统的开发应用带来了新的 框架和思路。现今企业要求各种信息能够在企业内部流通,特别是生产过程中的 信息要被应用到企业信息系统的各个部分,因此有必要设计一种方式,能够使得 数据在企业内部流动而且不影响各个系统自身。基于x m l 技术的资源描述框架 ( r d f ,r e s o u r c ed e s c r i p t i o nf r a m e w o r k ) 被设计用来描述网络上的各种资源, 但它同样也可以用来描述生产过程中的各种资源,如它可以描述各种设备在生产 流程中的状态,然后以x m l 的形式,与企业的信息系统结合起来,以达到数据 流动的目的。【4 】【5 】 基于上述的现实情况,本文即提出设计一个新的实时数据处理架构,该架构 以实时数据库s q l i t e 和资源描述框架( r d f ) 为基础,首先将生产和监控过程中 所使用的各种设备以r d f 描述出来,从而建立企业的资源库。其他各个模块使 用由r d f 所描述的资源来处理各种生产流程及生产数据,接着以s q l i t e 为数据 库,再加以缓存、数据处理等模块组成实时数据处理模块。此课题的研究结果能 够帮助企业更好地管理企业范围内的资源,优化生产流程,提高资源的利用率, 进而提高企业的生产效率,增加企业的竞争力。 由于本课题涉及的技术领域较宽广,在系统的实现过程中,本文着重于两点: 一是如何用r d f 来描述资源做全面的分析研究,并在实时数据处理框架中各个 模块中应用r d f 进行开发,得到一个实时数据处理的原型;二是如何使用s q l i t e 进行数据的存储规划。关于更详细的内容将在本章最后一节进行综述。 1 2 组态系统概况 组态一词源于英文的c o n f i g u r a t i o n ,其本意是“配黄,即模块化任意组 合。从软件实际使用的角度来看,为应付硬件环境的变化,要对软件本身做一些 调整,它采取的手段就是对软件进行配置。一个现场使用的过程控制软件的开发 分为两个步骤来完成:一是组态软件的设计;二是系统对象的构造。组态软件是 由软件设计人员设计完成的,而现场使用的软件必须由工程技术人员根据应用的 实际要求使用组态软件构造出各种系统对象后才能使用,后一步骤就是组态。在 开发传统的工业控制软件时,工业被控对象一旦有变动,就必须修改其控制系统 2 第1 章绪论 的源程序,导致其开发周期长;已开发成功的工控软件又由于每个控制项目的不 同而使其重复使用率很低,导致它的价格非常昂贵;在修改工控软件的源程序时, 倘若原来的编程人员因工作变动而离去,则必须与其他人员或新手进行源程序的 修改,因而更是相当困难。通用工业自动化组态软件的出现为解决上述实际工程 问题提供了一种崭新的方法,因为它能够很好地解决传统工业控制软件存在的种 种问题,使用户能根据自己的控制对象和控制目的任意组态,完成最终的自动化 控制工程。 1 2 1 组态系统的发展 监控组态软件是伴随着计算机技术的突飞猛进发展起来的。在2 0 世纪6 0 年 代,计算机开始涉足工业过程控制,但由于计算机技术人员缺乏对工厂仪表和工 业过程的认识,导致计算机工业过程控制系统在各行业的推广速度比较缓慢。2 0 世纪7 0 年代初期,微处理器的出现,促进了计算机控制技术走向成熟。微处理 器在提高计算能力的基础上,大大降低了计算机的硬件成本,缩小了计算机的体 积,很多研究、生产控制仪表和工业控制计算机的公司先后推出了新型控制系统。 这一时期较有代表性的产品是1 9 7 5 年美国h o n e y w e l l 公司推出的世界上第一套 d c s ( d i s t r i b u t e dc o n t r o ls y s t e m ,集散控制系统) t d c 2 0 0 0 。而随后的2 0 年 间,d c s 及其计算机控制技术日趋成熟,得到了广泛应用。此时的d c s 已具有 较丰富的软件,包括计算机系统软件( 操作系统) 、组态软件、控制软件、操作 站软件以及其他辅助软件( 如通信软件) 等。 在这一阶段,虽然d c s 技术、市场发展迅速,但软件仍是专用和封闭的。 除了在功能上不断加强外,由于开发成本高,用户数量少,软件成本一直居高不 下,d c s 在中小型项目上的单位成本过高,使一些中小型应用项目不得不放弃 使用d c s 。2 0 世纪8 0 年代中后期,随着个人计算机的普及和开放系统( o p e n s y s t e m ) 概念的推广,基于个人计算机的监控系统开始进入市场,并发展壮大。 组态软件作为个人计算机监控系统的重要组成部分,比p c ( 个人计算机) 监控 的硬件系统具有更为广阔的发展空间。第一,很多d c s 和p l c 厂家主动公开通 信协议,加入“p c 监控 的阵营。目前,几乎所有的p l c 和一半以上的d c s 都采用p c 作为操作站。第二,p c 监控大大降低了系统成本,使得市场空间得 3 以扩大,从无人值守的远程监视( 如防盗报警、江河汛情监控、环境监控、电信 线路监控、交通管制与监控、矿井报警等) 、数据采集与计量( 如居民水、电、 气表的自动抄表、铁道信号采集与记录等) 、数据分析( 如汽车和机车自动测试、 机组和设备参数测试、医疗化验仪器设备实时数据采集、虚拟食品、生产线产品 质量抽检等) 到过程控制,几乎无处不在。第三,各类智能仪表、调节器和p c b a s e d 设备由于增加了公开协议的通信接口,可与组态软件构筑完整的低成本自动化系 统,具有广阔的市场空间。第四,各类嵌入式系统和现场总线的异军突起,把组 态软件推到了自动化系统主力军的位置,组态软件越来越成为工业自动化系统中 的灵魂。 1 2 2 组态软件现状 组态软件产品于8 0 年代初出现,并在8 0 年代末期进入我国。但在9 0 年代 中期之前,组态软件在我国的应用并不普及。究其原因,大致有以下几点: ( 1 ) 国内用户还缺乏对组态软件的认识,项目中没有组态软件的预算,或 宁愿投入人力物力针对具体项目做长周期的繁冗的上位机的编程开发,而不采用 组态软件。 ( 2 ) 在很长时间里,国内用户的软件意识还不强,面对价格不菲的进口软 件( 早期的组态软件多为国外厂家开发) ,很少有用户愿意去购买正版。 ( 3 ) 当时国内的工业自动化和信息技术应用的水平还不高,组态软件提供 了对大规模应用、大量数据进行采集、监控、处理并可以将处理的结果生成管理 所需的数据,这些需求并未完全形成。 随着工业控制系统应用的深入,在面临规模更大、控制更复杂的控制系统时, 人们逐渐意识到原有的上位机编程的开发方式,对项目来说是费时费力、得不偿 失的。因此,在1 9 9 5 年以后,组态软件在国内的应用逐渐得到了普及。下面对 几种组态软件分别进行介绍。 ( 1 ) i n t o u c h :w o n d e r w a r e 的i n t o u c h 软件是最早进入我国的组态软件。在 8 0 年代末、9 0 年代初,基于w i n d o w s 3 1 的i n t o u c h 软件曾让我们耳目一新,并 且i n t o u c h 提供了丰富的图库。但是,早期的i n t o u c h 软件采用d d e 方式与驱 动程序通信,性能较差,最新的i n t o u c h 7 0 版已经完全基于3 2 位的w i n d o w s 平 4 第1 章绪论 台,并且提供了o p c 支持。 ( 2 ) c i t e c h :c i t 公司的c i t c c h 也是较早进入中国市场的产品。c i t c c h 具有 简洁的操作方式,但其操作方式更多的是面向程序员,而不是工控用户。c i t c c h 提供了类似c 语言的脚本语言进行二次开发,由于c i t e c h 的脚本语言并非是面 向对象的,而是类似于c 语言,这无疑为用户进行二次开发增加了难度。 ( 3 ) w i n c c - 西门子公司的w i n c c 也是一套完备的组态开发环境,西门子 提供类c 语言的脚本,包括一个调试环境。w i n c c 内嵌o p c 支持,并可对分布 式系统进行组态。但w i n c c 的结构较复杂,用户一般需要经过西门子的培训以 掌握w i n c c 的应用。 ( 4 ) 组态王:组态王是国内第一家较有影响的组态软件开发公司( 更早的 品牌多数已经湮灭) 。组态王提供了资源管理器式的操作主界面,并且提供了以 汉字作为关键字的脚本语言支持,组态王也提供多种硬件驱动程序。 1 2 3 组态软件的发展方向 目前看到的所有组态软件都能完成类似的功能:比如,几乎所有运行于3 2 位w i n d o w s 平台的组态软件都采用类似资源浏览器的窗口结构,并且对工业控 制系统中的各种资源( 设备、标签量、画面等) 进行配置和编辑;都提供多种数 据驱动程序;都使用脚本语言提供二次开发的功能,等等。但是,从技术上说, 各种组态软件提供实现这些功能的方法却各不相同。从这些不同之处,以及p c 技术发展的趋势,可以看出组态软件未来发展的方向【6 1 。 1 数据采集的方式 大多数组态软件提供多种数据采集程序,用户可以进行配置。然而,在这种 情况下,驱动程序只能由组态软件开发商提供,或者由用户按照某种组态软件的 接口规范编写,这为用户提出了过高的要求。由o p c ( o l ef o rp r o c e s sc o n t r 0 1 ) 基金组织提出的o p c 规范基于微软的o l e d c o m 技术,提供了在分布式系统 下,软件组件交互和共享数据的完整的解决方案。在支持o p c 的系统中,数据 的提供者作为服务器( s e r v e r ) ,数据请求者作为客户( c l i e n t ) ,服务器和客户之 间通过d c o m 接口进行通信,而无需知道对方内部实现的细节。由于c o m 技 术是在二进制代码级实现的,所以服务器和客户可以由不同的厂商提供。在实际 5 应用中,作为服务器的数据采集程序往往由硬件设备制造商随硬件提供,可以发 挥硬件的全部效能,而作为客户的组态软件可以通过o p c 与各厂家的驱动程序 无缝连接,故从根本上解决了以前采用专用格式驱动程序总是滞后于硬件更新的 问题。同时,组态软件同样可以作为服务器为其他的应用系统( 如m i s 等) 提 供数据。o p c 现在已经得到了包括i n t e r l l u t i o n 、s i m e n s 、g e 、a b b 等国外知名 厂商的支持。随着支持o p c 的组态软件和硬件设备的普及,使用o p c 进行数据 采集必将成为组态中更合理的选择【_ 丌。 2 脚本的功能 脚本语言是扩充组态系统功能的重要手段。因此,大多数组态软件提供了脚 本语言的支持。具体的实现方式可分为三种:一是内置的类c b a s i c 语言:二是 采用微软的v b a 的编程语言;三是有少数组态软件采用面向对象的脚本语言。 类c b a s i c 语言要求用户使用类似高级语言的语句书写脚本,使用系统提供的函 数调用组合完成各种系统功能。应该指明的是,多数采用这种方式的国内组态软 件,对脚本的支持并不完善,许多组态软件只提供i f t h e n e l s e 的语句结 构,不提供循环控制语句,为书写脚本程序带来了一定的困难。微软的v b a 是 一种相对完备的开发环境,采用v b a 的组态软件通常使用微软的v b a 环境和 组件技术,把组态系统中的对象以组件方式实现,使用v b a 的程序对这些对象 进行访问。由于v i s u a l b a s i c 是解释执行的,所以v b a 程序的一些语法错误可能 到执行时才能发现。而面向对象的脚本语言提供了对象访问机制,对系统中的对 象可以通过其属性和方法进行访问,比较容易学习、掌握和扩展,但实现比较复 杂。 3 组态软件的开放性 随着管理信息系统和计算机集成制造系统的普及,生产现场数据的应用已经 不仅仅局限于数据采集和监控。在生产制造过程中,需要现场的大量数据进行流 程分析和过程控制,以实现对生产流程的调整和优化。现有的组态软件对这些方 面的大部分需求还只能以报表的形式提供,或者通过o d b c 将数据导出到外部 数据库,以供其他的业务系统调用,在绝大多数情况下,仍然需要进行再开发才 能实现。随着生产决策活动对信息需求的增加,可以预见,组态软件与管理信息 系统或领导信息系统的集成必将更加紧密,并很可能以实现数据分析与决策功能 6 第1 章绪论 的模块形式在组态软件中出现。 4 对h a t e r n e t 的支持程度 现代企业的生产已经趋向国际化、分布式的生产方式。i n t e m e t 将是实现分 布式生产的基础。组态软件能否从原有的局域网运行方式跨越到支持i n t e m e t , 是摆在所有组态软件开发商面前的一个重要课题。限于国内目前的网络基础设施 和工业控制应用的程度,在较长时问内,以浏览器方式通过i n t e r a c t 对工业现场 的监控,将会在大部分应用中停留于监视阶段,而实际控制功能的完成应该通过 更稳定的技术,如专用的远程客户端、由专业开发商提供的a c t i v e x 控件或j a v a 技术实现。 1 3 课题研究意义 一方面随着企业规模的扩大,企业的工业现场越来越复杂。各种不同的设备 被添加到工业过程中,旧的设备不断淘汰,新的设备也不断添加,这给企业的生 产管理带来极大的不便。特别的,由于设备的增加,组态软件需要记录和监控的 数据量也急剧增加,因此,实时数据管理模块的研究成为组态软件研究中一个非 常重要的部分。 另一方面随着m i s ( 管理信息系统,m a n a g e m e n ti n f o r m a t i o ns y s t e m ) 和c i m s ( 计算机集成制造系统,c o m p u t e ri n t e g r a t e dm a n u f a c t u r i n gs y s t e m ) 的大量应用, 要求工业现场为企业的生产、经营、决策提供更详细和深入的数据,以便优化企 业生产经营中的各个环节。虽然现有的组态软件在监控方面能够满足企业的需 求,但由于各种各样的组态软件处理数据方法不同,它们各自的数据定义是不一 样的,这就为企业的决策带来一定的麻烦。因此,企业需要有一种方案来解决企 业内部各个系统之间信息共享的问题。 综上所述,本课题的研究意义在于利用实时数据库技术,结合r d f 技术的 优点,改进旧有的组态软件的体系结构,使得组态软件更具有开放性,以满足用 户对生产、经营、决策的需要。本文的研究方法、实验结果也将为今后的扩充打 下基础,并为类似开发提供借鉴。关于本课题后续工作展望,将在最后一章中予 以分析总结。 7 1 4 本文的主要内容 本节结合本文结构组织与主要内容,对课题研究工作进行简要介绍。本课题 主要研究了组态软件的现状,根据现有实时数据库和r d f 技术的发展状况,提 出了组态软件中实时数据模块的一种新的结构。然后在此基础上,设计并实现了 实时数据模块原型,完成了对软件原型的测试。本文具体内容表述安排如下: 第l 章,绪论。本章作为本文的开篇,首先介绍本文的课题背景,其次分析 总结组态软件的发展现状及发展趋势,继而探讨本文研究的意义所在,最后总起 本文结构与内容。 第2 章,组态软件相关技术分析与研究。本章主要介绍了在本课题中所用到 的各种技术。主要介绍了三方面的技术:一是资源描述框架( r d f ) ,并介绍如 何用它来描述资源;二是实时数据库s q l i t e ,并介绍它的使用方法;三是数据压 缩,主要探讨数据压缩的各种算法及原理。 第3 章,系统设计与实现。本章是对具体开发工作的总结,首先提出了新的 体系架构的框架,并在一个具体的应用场景中,探讨如何使用r d f 来描述生产 过程中的资源。其次在r d f 描述的基础上,设计并实现系统中的r d f 模块。然 后设计并实现了缓存模块、数据处理模块、映射解析模块等子模块。其中数据处 理模块采用实时数据库s q l i t e 和类似于对象关系映射( o r m ) 的技术来实现。 第4 章,性能与测试。本章是对开发的实时数据模块所做的功能测试与性能 分析工作的总结。本章首先测试预期功能的实现以及运行时状态,并进一步对软 件原型进行一定的性能分析,并以此为依据分析探讨本课题中设计的体系结构的 可行性与实用性。 第5 章,结论与展望。本章作为对本文的总结,探讨在课题研究工作中取得 的结果,并结合存在的问题分析本文所设计的框架的扩展性及进一步的研究方 向,展望其应用前景。 8 第2 章纽态软件相关技术分析与研究 第2 章组态软件相关技术分析与研究 经过二十多年的发展,组态软件在监控控制方面的功能已经十分完善,其监 控和控制方面的技术,如图元的层次结构设计、可扩展的组件( 如a c t i v e ? ( 控件) 已经相当成熟【8 】。随着企业的发展,实时数据的处理成为日常生产中的一个重点, 实时数据管理模块的研究成为组态软件研究中一个非常重要的部分。同时组态软 件作为企业信息系统的一部分,难以与信息系统的其他部分相沟通,因此需要采 用新的技术对组态软件的体系进行改进。r d f 的产生和发展为我们提供了一个 改进组态软件体系的有力工具。在r d f 研究的基础上,课题将对组态软件的实 时数据处理模块进行了改进设计。本章主要介绍r d f 和实时数据处理的相关技 术,包括所采用的实时数据库s q l i t e 和实时数据压缩技术。 2 1 资源描述框架( r d f ) r d f 是1 9 9 7 年1 0 月w 3 c 正式发布的草案。r d f 的设计目的是提供一种强 有力的表述、交换与利用元数据的机制,通过对一般意义上的语义、语法和结构 的支持,提供在各种不同的元数据体系之间的互操作性。r d f 本身只有很少的 语义定义元素,而是提供一种框架体系,使不同的用户或团体能够在这一框架下 应用他们自己的元数据元素【9 】。 r d f 是一种语言,用于表达关于万维网( w r o r l dw i d ew 曲) 上的资源的信息。 它专门用于表达关于w e b 资源的元数据,比如w e b 页面的标题、作者和修改时 间、w e b 文档的版权和许可信息、某个被共享资源的可用计划表等。然而,将“w e b 资源( w 曲r e s o u r c e ) 这一概念一般化后,r d f 可被用于表达关于任何可在w e b 上被标识的事物的信息【1 0 】【1 。 r d f 适用于信息需要被应用程序处理而不是仅仅显示给人观看的场合。r d f 提供了一种用于表达这一信息,并使其能在应用程序间交换而不丧失语义的通用 框架。 9 2 1 1r d f 的特点 r d f 有以下一些特点: ( 1 ) 易控制。r d f 使用简单的“资源属性值”三元组,所以很容 易控制,即使在数量很大的时候。这个特点很重要,因为现在w e b 资源越来越 多,如果用来描述资源的元数据格式太复杂,势必会大大降低元数据的使用效率。 从功能的角度来看,完全可以直接使用x m l 来描述资源,但x m l 结构比较复 杂,允许复杂嵌套,不容易进行控制。r d f 可以提高资源检索和管理的效率, 从而真正发挥元数据的功能。 ( 2 ) 易扩展。在使用r d f 描述资源的时候,词汇集和资源描述是分开的, 所以可以很容易扩展。例如如果要增加描述资源的属性,只需要在词汇集中增加 相应的元数据即可。 ( 3 ) 包容性。r d f 允许任何人定义自己的词汇集,并可以无缝地使用多种 词汇集来描述资源,以根据需要来使用,使各尽其能。 ( 4 ) 可交换。r d f 使用x m l 语法,可以很容易地在网络上实现数据交换。 ( 5 ) 易综合。在r d f 中资源的属性是资源,属性值可以是资源,关于资源 的陈述也可以是资源,都可以用r d f 来描述,这样就可以很容易的将多个描述 综合,以达到发现知识的目的。例如,在描述某书籍时指明其作者属性值是另一 资源,我们就可以根据描述作者的u 砒( u n i v e r s a lr e s o u r c ei d e n t i f i e r ,通用资源 标志符) 来获得作者的信息,如毕业院校等,从而知道这本书是某一院校的毕业 生写的,于是在表面上看来没任何关系的两者间建立联系,而这种联系往往是知 识发现的前奏。 2 1 2r d f 的基本模型 r d f 提供描述资源的模型,其核心是一个代表资源及其响应描述的语法独 立的模型,具体而言,r d f 基本的数据模型由三种对象类型组成【1 2 】: ( 1 ) 资源( e g o l t t c e ) :r d f 描述的所有事物都称为资源。一个资源可以是 整个网页,也可能是网页中的部分,比如特定文档中h t m l 或x m l 元素:资源 也可以是网页的集合,比如整个网站中所有的网页;资源也可能是不能直接通过 1 0 第2 章组态软件相关技术分析与研究 w e b 访问的对象,比如打印的标记。资源的命名是通过统一资源标识u r i 加上 一个可选的定位i d 表示的。u r i 的扩展性允许表示任何可以想象的实体。 ( 2 ) 属性( p r o p e r t i e s ) - 属性是用来描述资源的具体方面、特性或相互的关 系等。每个属性有特定的含义,规定其允许值,定义能够描述的资源类型以及与 其他属性的关系。 ( 3 ) 声明( s t a t e m e n t ) - 一个有属性及其值的特定资源称为r d f 声明。一 个声明的三部分分别为:主语( s u b j e c t ) ,谓语( p r e d i c a t e ) 和宾语( o b j e c t ) 。主 语表示资源,谓语代表已命名的属性,而宾语则是属性的具体值。声明对象可以 是用u r i 规定的资源,也可以是直接表示其内容,即一个字符串,或是其他由 x m l 定义的原始数据类型。 下面用节点和弧线图表表示一个r d f 声明。图2 1 的节点( 椭圆表示) 代 表资源,弧线( 带箭头) 代表已命名的属性,矩形表示属性值。 2 1 3r d f 基本原理 图2 - lr d f 声明 r d f 数据描述提供了一个抽象、概念化的用来定义和使用元数据的框架。 要产生和交换元数据,具体的语法是必不可少的。r d f 提供了一种被称为 r d f x m l 的x m l 语法来书写和交换r d f 图。与r d f 的简略记法一三元组 ( t r i p l e s ) 不同,r d f x m l 是书写r d f 的规范性语法( n o r m a t i v es y n t a x ) b 3 1 。 r d f x m l 语法的基本思想可以通过下面的一些例子来说明。以下面这句英 文为例:h t t p :w w w e x a m p l e o r g i n d e x h t m lh a sac r e a t i o n d a t ew h o s ev a l u ei s a u g u s t1 6 ,1 9 9 9 。上面这个陈述可以用r d f 图来表示( 其中的c r e a t i o n d a t e 属 性已指定了u r h e f ) ,如图2 - 2 所示。 图2 2 描述一个网页的创建日期( c r e a t i o nd a t e ) 用三元组表示就是: e x :i n d e x h t m le x t e m s :c r e a t i o n - d a t e “a u g u s t16 ,19 9 9 ” 例2 1 显示了图2 - 2 所对应的r d f x m l 语法: 图2 - 2 网页创建日期的r d f x m l 语法 例2 1 :描述页面创建日期的r d f x m l 2 4 5 a u g u s t 16 ,19 9 9 6 7 第1 行是x m l 声明( x m ld e c l a r a t i o n ) : 。它表明以 下内容将是x m l ,x m l 版本号是1 0 。 第2 行以r d f :r d f 元素开始。它表明以下x m l 内容( 从这里开始,直到第 7 行的 为止) 用于表达r d f 。同一行紧随r d f :r d f 其后的x m l 命名 空间声明( x m ln a m e s p a c ed e d a r a t i o n ) ,即r d f :r d f 首标签的x m l n $ 属性。该声 明指明在当前内容中出现的所有前缀为r d f :的标签都属于由下列u r i r e f 所标识 的命名空间 :h t t p :w w w w 3 o r g 19 9 9 0 2 2 2 一r d f - s y n t a x n 以 1 2 第2 章组态软件相关技术分析与研究 h t t p :w w w w 3 o r e , 19 9 9 0 2 2 2 - r d f - s y n t a x n s # 打头的u r i r e f s 用于标识来自r d f 词 汇表中的术语。 第3 行是另一个x m l 命名空间声明( 关于前缀e x t e r n s 的) 。该声明用r d f :r d f 元素的另一个x m l n s 属性来表示。它指明前缀e x t e r n s :与命名空间i j l r k e f 定义的 词汇表中的术语。第3 行末尾的“ ”符号表明r d f :r d f 首标签的结束。第l 至 3 行是常规的、必备的部分,用以表明当前的内容是r d f x m l ,并声明内容中 所使用的命名空间。 第4 _ 6 行是图中所示陈述的r d f x m l 主要部分,谈及r d f 陈述时,显而 易见,陈述是一种“d e s c r i p t i o n ( 描述) ”。并且,它是一种“a b o u t ( 判定) 陈 述主体的描述。r d f x m l 表示陈述的方式正是如此。第4 行中r d f :d c s c r i p t i o n 的起始标签表明某个资源描述的开始,然后标识了陈述所“a b o u t ( 针对) 的资 源( 也就是陈述的主体) 。r d f x m l 采用r d f :a b o u t 属性来指定主体资源的u r i r e f 第5 行用q n a m ee x t e r n s :c r e a t i o n - d a t e 作为标签,提供了“属性元素( p r o p e r t y d e m e n t ) ,来表示谓词以及陈述的客体。选择q n a m ee x t e m s :c r e a t i o n - d a t e ,可 以将本地名称c r e a t i o n d a t e 扩展h t t p :w w w e x a m p l e o r g t e r m s c r e a t i o n d a t e ,这个 属性元素( p r o p e r t ye l e m e n t ) 的内容就是陈述的客体“a u g u s t1 6 ,1 9 9 9 ”( 主体资 源的c r e a t i o n d a t e 属性的值) 。属性元素( p r o p e r t ye l e m e n t ) 在r d f :d e s c r i p t i o n 元 素所映射内容中以嵌套的形式存在,意味着该属性( p r o p e r t y ) 应用于 r d f :d e s c r i p t i o n 元素的r d f :a b o u t 属性( a t t r i b u t e ) 所指定的资源。 第6 行表明这个r d f d e s c r i p f i o n 到此结束。 最后,第7 行表明从第2 行开始的r d f r d f 元素到此结束。在能够通过上下 文确定x m l 内容为r d f x m l 的情况下,可以不用r d f :r d f 元素来包括 r d f x m l 的内容。 例2 1 展示了r d f x m l 如何把一个r d f 图编码为x m l 元素、属性、元素 内容和属性值的基本思想。 2 1 4r d fs c h e m a 数据模型 如果仅从定义元数据的角度看,r d f 已经能够胜任,但是r d f 提供的建模 原语( m o d e l i n gp r i m i t i v e s ) 仍然过于简单。例如r d f 没有提供类( c l a s s ) 的定 1 3 义,也没有提供机制来定义性质之间的关系。r d fs c h e m a 就是作为r d f 的数据 定义模型而出现的【1 5 】。采用了r d fs c h e m a 之后,我们就可以为生产中的设备定 义类型,可以说“5 号设备 是类型“重型电机 ,而类型“重型电机 是类型 “电机的子类。同时我们还可以为性质定义范围( r a n g e ) 和定义域( d o m a i n ) 。 “s c h e m a ”的功能像一个字典,可以理解为大纲或者规范。r d fs c h e m a 的 作用是: ( 1 ) 定义资源的属性类、语法、属性值的类型; ( 2 ) 定义资源类( t y p eo f c l a s s ) 以及属性所应用到的资源类; ( 3 ) 声明( d e c l a r e ) 由一些机构定义的元数据标准的属性类。 r d fs c h e m a 使用一种机器可以理解的体系来定义描述资源的词汇。r d f s c h e m a 的定义和宣布使用了x m l n a m e s p a c e ( 命名空间) 机制。x m l n a m c s p a c e 的作用是用来避免不同元素被命名为相同的控制标记而给应用带来的困扰。在实 际应用中有些相同名称的控制标记在不同的领域和机构中的含义是不同的。而 x m l 非常注重控制标记的语言含义,所以当不同应用领域中使用了同名称的控 制标记时,x m l 采用了这一方法来区别。在r d fs c h e m a 中,每个r d f 资源都 有一些核心类和属性。核心类包括: r d f s :r e s o u r c e :任何利用r d f 来表示、描述的事物都被称为“资源” ( r e s o u r c e ) 。 r d f s :c l a s s :这里c l a s s 类似面向对象中“类”的概念,指的是事物的一类。 这一类中的一个具体事物叫做“实例( i n s t a n c e ) 。比如,哺乳动物和大象的关 系。 r d f s :p r o p c r t y - 指资源的属性。 核心属性有r d f s :t y p e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论