WITS钻井井场数据传输标准.docx
《WITS钻井井场数据传输标准.docx》由会员分享,可在线阅读,更多相关《WITS钻井井场数据传输标准.docx(33页珍藏版)》请在冰豆网上搜索。
WITS钻井井场数据传输标准
WITS标准
(1)简介
井场信息传输规范(WITS)是一种通信格式,它应用于从一个计算机系统向另一个计算机系统传输各种各样的井场数据。
在石油工业的勘探和开发领域中,它作为一种推荐格式,使作业和服务公司,既可以在联机状态下,也可以批传递方式进行数据交换。
WITS是一种多级格式,它提供一个容易实现的具有灵活性不断增加的较高级别的进入点。
在低级别时,使用一种固定格式的数据流;而在高级别时,可应用一种自定义的定制的数据流。
WITS数据流由不连续的数据记录组成。
每个数据记录的产生都是独立于其它数据类型,并且每个数据记录都有唯一的触发变量和采样间距。
通常,钻机动作决定了在其一给定时间内使用哪个记录,以便只有合适的数据被传输。
WITS还包括远程计算机系统向发送系统发送指令的方式,以便设置或改变某些参数,其中包括传输的数据类型和传输间距。
除规定了数据传输格式外,WITS还定义了一套基本的数据类型,以便增加用户自定义的记录类型。
背景
多年来,许多作业和服务公司已经为电子数据交换开发了各种独有的格式。
当服务公司和作业者之间建立了一种新的工作关系之后,可能需要写入新的软件,在双方的数据采集和分析系统能以一种正确的方式进行通信之前,要进行大量的试验和调试工作。
通常导至必须牺牲时间和数据的方式才能起动系统的问题。
这些格式的陆续开发和维护需花费巨大的代价。
这些格式的匹配和修改的成本和复杂性常使参与这类服务的作业者感到棘手,并且大量的井场数据常常不能被采集或迅速地被决策者采用,而这些数据对钻井过程中进行井场动态分析,钻井监控和地层评价又是非常有用的。
为了解决这种信息传输问题,在国际钻井承包商协会(IADC的钻井设备与测量分会(RIM)下面成立了一个工作组--信息传输分会。
信息传输分会
信息传输分会是由作业和服务公司在计算机软件系统开发、地质和钻井工程等领域中工作的代表所组成。
他们都熟悉有关井场数据格式过多和不匹配的问题。
为了确保提出的格式对于整个石油工业是完全可行的,来自尽可能多的作业和服务公司的代表们作出了巨大的努力。
这种努力包括了在美国以及在欧洲和亚洲从事作业的公司的意见。
该工作组的目标是广泛而具体的:
“定义应用远程通信设施或硬件媒体,从井场向基地传输的数据流格式和信息内容。
”
要使格式的遗漏最小,在下列领域里为获得在井场条件下监视或采集的数据项目的清单作出了巨大的努力:
--地质
--钻井工程
--随钻测量(MWD)
--钻机参数
--固井(注水泥)
--钻杆测试(DST)
在这些领域里提供数据采集服务的公司,就当前使用的数据项目和格式进行了表决。
经共同努力,小组成员就当前工业中使用的主要存在的数据格式和数据传输系统达成一致意见。
一个由该行业优秀人员广泛参加的研讨班就数据传输和格式化的一般方法,当前使用的不同硬件及软件系统以及几种特定格式的特性和内容表达了意见。
通过对Amoco,Arco,Mobil和Tenneco几家公司数据处理中心的现场参观和介绍,研讨班的效果得了加强。
随着综合性数据词典的建立和分会代表对现存格式的熟悉,他们希望通过周密考虑制定一套适用于作业和服务公司双方现在及将来需要的规定。
这些需求是:
--小公司和大公司均可达到
--在一定时期内能满足技术变化的工业需要
--提供一个简单的、低成本的进入点
--限定长期限的软件支持花销
--应用一种有效的传输方式
--能够用于联机和批处理方式
--能够在一个大范围计算机平台上执行
--能够满足单一远程用户和多个井场数据中心的需求
--包括现存的所有标准(法定的或事实上的)
--兼顾国际和本国的需要
考虑到这些需求,分会接受测井信息标准(LIS)作为WITS的基本框架,并且着手阐述这些格式的特定部分。
选用LIS是因为它可以满足WITS提出的许多要求,这项工作的成果就是在本书中所描述的WITS数据通信格式。
信息传输分会正发展成为井场信息传输指导小组。
并且WITS指导小组,除了具有IADC(国际钻井承包商协会)分会的地位外,也是API(国石油学会)石油信息数据交换中心(PIDX)的主要成员。
API-PIDXWITS用户组织的目的是要改进这些格式,答复解释问题,以及研究在将来为满足新的要求而增强这些格式的方法。
井场信息传输规范(WITS)
WITS的主要特点是它所提供通信功能的多级方法。
当前已定义了四个级别,0级以ASCII码格式为基础,1级到3级是以LIS为基础,而级别的增加都表示复杂性和灵活性的提高。
目前分会正在考虑第5级(WITS4级),并很可能采用最近批准的APIRP-66(DLIS)(美国石油学会推荐格式)格式作为框架。
它将考虑到更大程度的灵活性,但也带有一定程度的复杂性。
这个文件仅限于讨论WITS0级到3级,而WITS4级留在将来修订。
WITS(同LIS一样)传输的基本单位是“物理记录”(图1.1)。
随后是物理记录包含一个“逻辑记录”。
虽然LIS标准有许多类型的逻辑记录,但仅有几种类型用于WITS,使用规定的类型以在不同级别内执行。
物理记录头
逻辑记录头
WITS数据记录
物理记录尾
←-------逻辑记录----→
←---------------物理记录------------→
图1.1:
WITS数据记录的结构
在WITS中使用的基本逻辑记录类型是数据记录。
每个数据记录由一组相关的数据项(字段或通道)组成。
而LIS是一个自定义格式,用数据格式说明(DFS)记录来描述其后的数据记录内容,分会认为设置基本的“预定义数据记录”可作为进入该格式的好的进入点,以满足大批作业者的需要,同时也减少了为所要求的更复杂的系统的开发时间。
3级允许用户通过用DFS记录来使用客户记录类型。
当前规定的WITS级(从简单到复杂)是:
WITS0级
WITS0级是由从一个计算机系统到另一个计算机系统的ASCII码格式数据值的单向传输组成。
这个级别的基本用意是为服务公司在井场进行数据交换提供一个简单的方法。
例如,如果在井场上只有一个通信通道可用于数据传输,而在这里又需要来自多个供应商的数据,就可能要用到WITS0级。
这也为对远程传输要求较低的用户提供一个容易的进入点。
WITS1级
WITS1级是由固定格式和内容构成的数据记录的单向传输组成。
这些记录被命名为WITS预定义数据记录(Pre?
DefinedDataRecords),其内容在附录A中描述。
该级只包括LIS数据记录,没有使用其他的LIS逻辑记录类型,也不可能进行双向对话。
对这些预定义数据记录,唯一可修改的是用其他数据项来取代被指定的备用通道。
被发送的记录及其传输问题必须预先商定,且仅能由发送者改变。
WITS2级
WITS2级也使用预定义数据记录,但包含了允许远程系统(接收端)控制通信会话的各个方面的双向对话。
这些命令在LIS注释(类型232)逻辑记录内被发送。
因此,在这一级中使用LIS数据和注释记录。
同WITS1级一样,数据记录的修改也只局限于用其它数据项取代备用通道。
由发送端进行数据记录的缓冲以及为后续应用而进行再传输或批传送,在这一级是任选的。
WITS3级
WITS3级除支持预定义数据记录之外,还支持客户数据记录。
这样的记录必须在使用前预先指定,由发送端通过传输数据格式或说明记录(LIS逻辑记录类型64)给出内容的细节。
该级为数据传输又提供一个非常灵活的格式。
然而,尤其是对接收端来说,这也肯定意味着复杂性的增加,因为如果接收端要使用这一格式,就必须能够阅读数据格式或说明记录。
预定义数据记录是记录1-25(LIS逻辑记录类型151-175)。
WITS数据记录26-49(LIS类型176-199)是为指导小组以后定义而保留的,这时客户WITS数据记录可以是50-80(LIS类型200-230)。
在这一级,由发送端进行数据记录的缓冲是强制性的。
执行WITS
影响执行的一个重要因素是用户到底是作业者还是服务公司。
正常情况服务公司收集并传输井场数据,它们的系统通常是发送端。
同样,绝大多数作业者要接收和处理被传送的数据,他们的系统通常是接收端。
在某些情况下公司可能需要开发发送端和接收端两边的软件。
WITS的执行者应熟悉这个文件和LIS手册(参考文献2)。
分会将在格式的说明和解释方面帮助开发者。
WITS各级别的全面执行是极其重要的。
如果WITS的一个级别被使用,那么该级别100%地要被执行。
这包括两套单位制的处理。
执行某个级别的部分内容将无助于为开发这个格式的目标而作出的努力。
WITS依从性
当确定由一个特殊系统支持的WITS级别的状态时,将使用下列指南:
*WITS0级(无论是在发送端、接收端状态还是在两者都有的状态,如果不是全部,它们的记录是被支持的)
*WITS1级(无论是发送端、接收端状态或是在两者都有的状态;如果不是全部,它们记录是被支持的)
*WITS2级(无论是发送端状态还是在接收端状态或是在两者都有的状态;它们的记录是被支持的以及是否使用了缓冲器(2B级))
*WITS3级(无论是发送端状态、接收端状态或者在两者都有的状态)
使用WITS格式的优点
1、WITS定义了数据内容和格式,是由专业化的服务公司和许多主要的作业者同意和审查过的。
2、WITS允许一系列的通信选择,从一个经很好定义的记录子集的简单单向数据传输到双向通信会话。
3、WITS产生了一个作业和服务公司联系的工具,而无需为软件支持非兼容的传输格式花费无效投资。
4、WITS为在井场或以井场进行数据传输方面提供了一种“通用语言”。
WITS标准
(2)数据格式
简介
这一章叙述了在LIS物理和逻辑记录内部WITS格式化数据的封闭问题。
仅仅是叙述了为在WITS格式内使用而对LIS进行的扩展或限制。
本文没有打算全面描述LIS格式。
读者参看参考2有关包括WITS所使用的各种数字表述码格式的LIS的详细内容。
“依从LIS的WITS”,目的是为了在“实时”和批处理方式下传输井场数据所要求的功能,并且借助于限制LIS的灵活性来促进对WITS的开发和执行,因为典型的井场数据通信并不需要这种灵活性。
依从LIS的WITS
下面是在使用WITS时,对LIS的限制和调整。
物理记录
1、最大字节长度为1024字节。
2、物理记录尾部必须存在于所有记录中。
3、由于当文件号和记录号记录在物理记录尾部时,它在WITS中的设置没有实际意义,因此为这些项目保留在尾部的4个字节被一个被称为物理记录尾序号(PhysicalRecordTrailerSequenceNumber)的新项目所占据。
这是一个分配给连续WITS数据记录的唯一的标识符,并且是一个32位的无符号的整数(具有表征代码129的一个32位无符号整数)。
注:
它仅适用于WITS数据记录,而对LIS注释记录或会有零的文件号和记录号的LIS数据格式说明记录不适用。
4、一个WITS检验和,类型3(在图2.1中定义的),要求在所有的WITS记录中。
5、物理记录头必须在第18、19、21、22位打开到ON,用来表示这些物理记录尾部属性。
6、物理记录头的23位(在LIS内没有定义)用来表示一个记录是在“实时”(OFF位)状态下被传送或是在晚些时候由一个缓冲器(ON位)传送。
注释:
全文中,术语“实时”表示在它的相应的触发时间(即在产生的时间)内传送的记录,而术语“缓冲的”则表示在记录产生之后的一段时间里,从大容量存储器为传输所重新加载的记录。
逻辑记录
1、逻辑记录的最大值为1014字节,指的是一个WITS逻辑记录的组成不能大于一个物理记录。
2、通常不使用的逻辑记录头的第二个字节,它是用来为记录指示触发激励源的。
注:
这是一个二进制数值,而不是说字节里的ASCII码字符。
使用下列代码
时间1
深度2
事件3
由发送手动触发的4
由接收方轮询的:
10+以上中的一个(如果适用)
例如:
一个按时间触发的记录在这个字节里有0000001(10进制1),
而一个由接收方轮询的记录并且深度触发适合,在这个字节里将有00001100(即10进制的12)。
在第3级的数据格式说明记录(LIS类型64)
1、不允许输入块13。
这意味着仅有一种方式表示深度(例如:
一个数据道)。
2、内允许有类型0,子类型1数据说明。
所有的API特性曲线代码可以设置为零。
3、通道可以由一个IEEE4字节单精度浮点数来表示(表述码=128)。
注:
这是一个扩展的LIS格式。
参见附录G。
数据记录
1、在一个会话期里数据记录类型号最大是64。
2、WITS数据记录是由151-230范围内的一个类型字段来定义的。
注:
在LIS标准中仅有类型0定义为数据记录。
使用类型151-230作为数据记录对LIS的扩展。
注释记录(LIS类型232)
1、当用作WITS对话命令记录时,最大字节长为256字节。
WITS级别
为了简化执行,定义了WITS的四个级,每一级都比前一级更复杂、更具综合性。
规范的每一级都具有前一级的特性。
WITS零级
它也被称为“井场内部传输”格式,因为它主要是供在井场上的服务公司之间进行数据交换用的。
它使用一个简单的带数据项的ASCII码格式,数据项是由其所在预定义数据记录内的位置标记的。
这种特殊方法的目的在于用联机(“实时”)方式,而不是批处理方式传输数据,但它可以适用于相当简单的批传输方法,传输双方必须就通信参数、传输频率均达成一致意见。
接收方希望数据在预先定义的记录中一定的形式表示出来(如:
平均的),而不是希望或要求的任何方式处理数据。
然而如果双方预先达成了一致意见,传输的数据可以基本上是原始的,然后再由接收方平均。
零级传输会话由一组数据集组成,数据集表示一组相关的数据项。
例如,来自相同时间间距的几个注水泥数据项。
一个数据集可以仅由一项组成,也可以括很多项。
事实上,连续的数据集可以包含不同的项目号。
一个数据集以一对表示AND(&&)的字符(HEX26)开始,跟着是一个回车及换行(HEXOD,OA)。
一个数据集以一对惊叹号(!
!
)(HEX21)和一个回车及换行结束。
数据项由一个回车及换行分开。
对数据集内容的限制是:
1、一个数据集不能包含多个记录类型的数据项。
2、一个数据项不能在一个数据集内重复。
3、除非有特殊要求,带有-9999.0空值的数据项不需要送出,而当一个数据项带有-8888.0空值(坏传感器读数)时,它应该被送出。
每个数据项对应于一个预定义数据记录变量。
每项都由一个“标识符”(IDENTIFIER)部分和一个“值”(VALVE)部分组成。
标识符由4个字符组成:
字符1和2标识预定义的记录
字符3和4标识那个记录里的项
例如:
电阻率1测量深度(DR1M)是预定义的记录8
(MWD--地层评价)的13项
IDENFIER=0813
数据项的值部分既可以是一个文本字符串也可以是表示一个数的ASCII码。
如果是文本串,它一定不能长于在预先定义的记录内规定的长度,但它可以短些,可包括空格,特殊字符等等,但不能出现&&或!
!
。
如果是数字,它可以长达16个字符,但至少要带一个数字,如果带有负号,负号必须是第一个字符。
不能以空格或零开头。
如果有一个小数点,它可以放在回车和换行结束前的任何位置。
举例:
承包商格林钻井公司(GREENDRILLING)
标识符1981
值GREENDRILLING
数据项1981GREENDRILLING
电阻率1测量深度3561.35英尺
标识符0813
值3561.35
数据项08133561.35
会话传输举例
下列会话传输举例由包含4个数据项的数据集组成(电阻率1测量深度,电阻率1读数,伽玛曲线1测量深度,伽玛曲线1读数):
&&
08133561.35
0815.97数据集1
08213565.13
082387.1
!
!
&&
08133561.61
0815.02数据集2
08213565,39
0823100.4
!
!
等等
WITS1级
在这一级使用二进制传输为尽可能地把大量的数据从发送端传到接收端提供了一个更有效的传输方式。
传输是单方向的。
在这一级,只有WITS预定义数据记录有效(逻辑记录类型151-175)。
为了满足有限修改,这一级在于预先定义的数据。
记录内使用了“备用通道”。
额外参数的定义必须是预先进行的。
然而应注意到,预定义的记录23包含的字符,允许对该文件进行多达10个这种类型的修改。
参看图2.2关于一个WITS1级通讯的图解表示
WITS2级
这一级是建立在1级之上的,它采用了允许接收方控制的双向对话命令的能力,其中包括传输记录的类型和记录发送时的间隔。
记录内容包含有限的带用备注修改的预定义数据记录。
数据记录的缓冲在这一级是可选择的。
可得到缓冲的那级用符号2B表示而不是2。
在这一级有效的LIS记录类型是数据记录和注释记录(逻辑记录类型232)。
参看图2.3关于一个2级通讯的图解表示。
WITS3级
在这一级,除WITS预定义数据记录和会话期对话命令的能力外,客户数据记录可以在依从WITS的LIS范围内定义同时可利用来自WITS数据词典的数据项或由双方依据预先商定的来定义。
接收端能够处理数据格式说明记录,并相应地读出后来的数据记录。
修改的记录只能是类型50-80(LIS逻辑记录类型200-230)。
因此,这一级就提供了一个尽管可能很复杂,但却很灵活的传输能力。
数据记录的缓冲在这一级是强制的。
在这一级,有效的LIS记录类型是数据记录、注释记录和数据格式说明记录。
WITS标准(3)数据内容
简介
这一章定义了WITS数据记录的内容,其传输的数据格式已在第二章里详细说明过。
同时要讨论有关井场变量的数据词典和预定义数据记录的概念。
数据词典
数据词典是由当前监测和采集的大多数井场数据变量清单组成的。
为每个变量都指定了两个特定的助记。
一个称为“短”助记,最多用4个字符与LIS相一致。
另一个称为“长”助记,为在其它方面的应用可扩展到8个字符。
短助记可用于3级的LIS数据格式说明定义相应的数据记录内容。
项目和其助记的数据词典(在附录C中查找)在预定义数据记录(附录A)中用作数据条款的基础,并也作为定制的记录结构的基础。
附录B包含有在WITS预定义数据记录中出现的每个数据项的简短描述总汇。
记录定义
所有WITS记录的一般结构框架如下:
1、每个记录有一个固定的记录头,一个主记录体和一定数量的定制的备用字段。
2、各个记录的记录头数据项保持固定,而记录体包含有从属于每个个别记录类型的特定数据项。
3、使用备用字段允许有较小的灵活性用操作者所选择的数据项去定制记录。
WITS记录头
固定的WITS记录头(不可用LIS物理记录头或逻辑记录头相混淆)包含下列条款:
井标识符
侧钻/井段号
记录标识符
序号
日期
时间
活动代码
井标识符由十六个字母数字组成。
前十二个字符标识来自数据的井名及位置。
最后四个字符标识在该井名及位置处的数据来源(在有多个发送端从同一个位置发送数据的情况下尤其重要)。
这个ASCII码格式化的数字一个从0000-9999的有效范围。
在开始服务时作业公司给每个顾主提供井名标识和来源号数。
一个井名识别字段的实例可能是:
WELL#120052
在这里WELL#12标识井的位置,0052标识其来源。
侧钻/井段号进一步定义数来源。
最初是零并随该井每次所侧钻井段而增加。
记录标识符包括该记录类型的数字代码。
对现行的预定义数据记录是1-25,而对于客户记录里50-80。
类型26-49保留给新的预定义数据记录。
序号标识在数据流内那个特定的记录类型,相对于同一类型的其他记录的顺序位置。
这样,每种记录类型的序号在那个已经产生的记录类型内记录号保持累加。
对于同一个井,既使在通信中断之后,这个号也继续增加。
日期和时间用作帮助标识该记录的关键字段。
世界坐标时(UCT),也就是格林威治标准时(GMT),用作日期和时间值的标准,并可能需要与地区时间的转换,这取决于井场位置。
活动代码是一个数字代码,它标识在记录产生时,井场上进行的工作。
附录E列出了被定义的WITS活动代码。
WITS备用字段
在记录的主体之后,一个有限数量的项被定义为备用字段。
如果不对记录进行修改的话,这些字段是空值(-9999.0)。
然而,每个备用项目可以被另一个项目定义所代替。
在这种情况下,如果仅需要一个或两个额外的变量,可以将这些变量加到一个现存的记录中而不是建立一个新记录。
替换数据项必须是能够用于标志备用字段的浮点表述码。
WITS预定义数据记录
既已指定了一组预定义数据记录。
建立这些记录使用了两个标准:
(1)钻机动作。
(2)产生频率和/或者监测项目要求的间距。
所有常见的钻机动作都被选址,且把适合于每种动作的变量组合在一起。
应用这些准则,总共定义了25个记录:
记录记录描述
1通用:
以时间为基础
2钻进:
以井深为基础
3钻进:
接单根
4水力学
5起下钻:
以时间为基础
6起下钻:
接单根
7测斜及定向
8随钻测量(MWD)地层评价
9MWD力学参数
10压力评价
11泥浆池体积
12气体色谱组分:
以分析周期为基础
13气体色谱组分:
以井深为基础
14迟到的连续泥浆性能
15岩屑及岩性
16油气显示
17固井(注水泥)
18钻杆测试(DST)
19结构配置
20泥浆报告
21钻头报告
22注释
23井标识
24船舶移动及停泊状况
25天气及海洋状况
预定义数据记录描述
记录1通用:
以时间为基础的记录:
用作井场产生的基本记录,与钻机动作无关。
因此,就数据的内容而论它是最通用的记录,尽管更重视传感器的数据而不是计算的数据。
产生的频率可以从几秒钟到数分钟,这取决于作业者要求的程度。
记录2钻进:
以井深为基础的记录:
以该井总井深变化为基础而产生的记录。
产生的频率典型的是每钻进一米(英尺)产生一个记录。
记录3钻进:
接单根记录:
用于记录在钻进时有关接单根的信息。
也就是在钻柱上增加新钻杆。
数据内容包括大钩最大负荷,平均和最大上提和下放速度,以及接单根时间。
产生频率是每次接单根一个记录。
记录4水力学记录:
主要包含计算的水马力信息,其中包括流体粘度,循环系统压力损失等等。
产生频率是在钻井流体循环时以一个固定的时间为基础。
记录5起下钻:
时间记录:
包括有关起下钻或下套管及尾管的信息,其中包括下放及提升速度,游车位置,大钩负荷读数等等。
它将作为以连接为基础的起下钻记录更详细的起下钻记录。
记录产生频率取决于所要求的详细程度,而通常是在几秒钟到一分钟的范围。
记录6起下钻:
连接记录:
包含有关起下钻或下套管每次连接的总信息。
在记录中包括最大下放和提升速度,大钩最大负荷,起出和处理立根的时间等等。
产生频率是每次连接一次。
记录7测斜及定向记录:
包含定向测斜及信息。
数据可由单点测斜、多点测斜和随钻测斜方法其中之一给出。
产生频率是每测斜一次一个记录。
记录8随钻测量:
地层评价记录:
包含有井深和用于地层评价的随钻测量传感器的值,包括伽玛曲线,地层电阻率和孔隙度仪数据。
产生频率是以一个固定的时间为基础,比如每分钟一次或以深度为基础,比如每米(英尺)一次。
记录