软件设计模式在数控测井系统中应用.docVIP

软件设计模式在数控测井系统中应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件设计模式在数控测井系统中应用

软件设计模式在数控测井系统中应用   摘要:在2011年社会实践期间有幸参加某公司的高性能数控测井系统项目的开发研制工作。该系统是在当前测井成套测井装备的基础上,为满足高精度,高性能,高效率的要求开发的测井系统。该系统由井下仪器系统、遥测系统、地面系统、软件系统和解释评价系统等子系统组成。设计模式是前人设计面向对象软件的经验和总结,大量实践经验证明在软件开发中灵活的使用设计模式可以极大的提高系统的稳定性、扩展性和维护性。描述在测井软件系统开发过程中,如何分析和发现相关模式,以及如何选择和应用设计模式,特别是介绍MVC模式在软件框架和相关系统模块中的应用和使用效果,在最后,讨论在实际项目开发中,设计模式应用的有关想法和教训。   关键词:MVC;设计模式;数控测井系统   中图分类号:TP311 文献标识码:A 文章编号:1671—7597(2012)0510131-02   随着当前石油测井技术的发展,为了能更快更好地得到储层地层信息,2011年6月某公司成立了高性能数控测井系统项目,目的是提供一个从井下到地面以及解释评价的整套测井系统。系统的设计目标是一次测井,取得所有合格资料,并且能保证60井次的免维修率。整个系统由遥测系统、地面系统、井下仪器、解释评价系统和软件系统等子系统组成。整个测井软件系统完成三个主要任务:测井数据的采集、测井数据的工程值计算、测井过程的监控。测井数据采集主要是采集井下仪器通过测井遥测系统传输的测井数据,并保证数据的完整性、正确性。测井数据工程值计算主要是把采集的数据根据不同仪器刻度计算方法进行工程值的计算,测井过程监控主要是把计算的测井数据用曲线和图像的方式实时的显示在屏幕和打印成图,由测井操作员进行实时监控。   设计模式是前人设计面向对象软件的经验和总结,在软件设计中引入设计模式开发方法,可以极大的提高软件系统的稳定性、可扩展性和可维护性。在测井软件系统框架进行分析和设计时,根据系统的稳定性、可扩展性和可维护性的要求,项目组经过细致分心,决定采用MVC设计模式。   MVC模式构架包括三个部分:模型(Model)、视图(View)、控制(Control)。模型(Model)主要是对系统的数据和逻辑运算的封装。它独立与系统的界面和I/O。视图(View)把表示模型的数据和逻辑关系用特定的形式展示给用户。控制(Control)处理用户和软件之间的交互操作,当模型的数据发生更新时,控制随着模型的更新进行相应更新,但是整个更新过程,对外接口不变,对视图造成最少的影响。模型、视图、控制的相互分离有利于模块之间内聚性的提高和耦合性的降低。一个模型可以对应多个视图,由控制来传播模型的变化从而更新视图。   MVC模式如何在测井软件系统实现,我们主要是从如下四个方面进行:   1 分析系统功能。分离功能模型   首先根据系统的主要任务进行系统的模块分解。根据测井软件系统数据采集、数据转换和测井监控三个主要任务,把系统分为三个模块对应于MVC模式的三个部分。其中模型(Model)对应于数据的采集和工程值的计算。测井视图(View)对应于测井监控功能。模型层实现下面四大功能:采集测井数据、处理测井数据、存储测井数据以及数据的刻度计算。初始化井下仪器和硬件平台,采集数据帧,井下仪器数据的中断处理,重组数据帧等任务由测井数据的采集模块实现。数据刻度计算主要是针对不同的仪器实现数据的刻度计算,即把获取到的测量数据对照刻度系数表进行计算,同时参考深度延迟数据来修正当前计算结果等。数据存储主要是测井数据的存储和原始数据的存储。这里我们采用的是测井公用的XTF格式作为数据存储的格式。数据的操作由控制负责,它是视图和模型之间数据交互的接口,完成的任务主要是提供数据输入和输出功能。   2 视图的设计与实现   视图主要是提供测井数据的图形显示。通过调用模型层中的数据操作方法,从而提取测井数据,然后根据不同的测井数据提供图像、波列、曲线等多种表现形式。在本系统的开发过程中,为了提高程序的健壮性和数据采集的稳定性,系统采用进程间通讯的消息传递方式与模型层和控制层进行交互。视图的实现本身就是一个独立的可执行程序,它通过TCP/IP网络与模型之间的进行通讯,视图主要包括绘图输出打印模块、数据显示模块和数据源模块等部分组成。数据源模块负责得到模型(Model)传递过来的数据,然后把数据再分配给相应的数据显示模块,数据显示模块设计成多个类的继承层次结构,其基类是全局绘图类(CDrawObj),从此父类派生出来的子类有图像类(CDrawImage)、波列类(CDrawWave)、曲线类(CDrawCurve)。绘图输出打印模块提供管理功能,负责数据显示的绘制和打印、视图的区域更新等功能。   3 控制的设计与实现   控制主要功能是提供

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档