舰船科学技术  2016, Vol. 38 Issue (3): 134-137   PDF    
基于嵌入式的新型井下以太网总线的设计
魏强, 李英波    
中国舰船研究院北京环鼎科技有限责任公司, 北京 102200
摘要: 介绍一种应用于井下测井仪器上的新型交换式以太网总线结构。该总线结构能有效克服共享式以太网总线所造成的不确定性,并利用嵌入式系统,使该网络总线设计更简洁、更稳定。同时研究交换式以太网总线的硬件及软件设计。经验证,该设计完全满足当下网络化测井的需求。
关键词: 测井    总线    以太网    交换式    嵌入式系统    
The new downhole ethernet bus design based on embedded system
WEI Qiang, LI Ying-bo    
China Ship Research and Development Academy, Huanding Energy Services, Beijing 102200, China
Abstract: This page introduces a new switched Ethernet bus structure which is applicable for downhole logging instrument. This bus structure effectively overcomes the instability caused by share-mode Ethernet bus structure. Meanwhile, the embedded system makes this switched Ethernet bus structure much more simple and stable. This paper also elaborates the hardware designation of the switched Ethernet bus as well as its software designation. This designation completely fulfills nowaday requirements for network log.
Key words: logging    data bus    Ethernet    switch    embedded system    
0 引言

随着成像仪器及阵列化仪器如偶极声波测井仪的出现,测井过程中系统对数据传输速率的要求越来越高,以哈里伯顿为代表的国际知名厂商结合网络技术的快速发展,将网络技术引入到测井行业,使电缆测井的通讯速率大为提高。近年来,随着国内通信行业的飞速发展,网络化测井在国内逐渐兴起[1],将成熟的民用 ADSL 技术加以改进,运用到测井业,使得测井电缆传输速率大大提高。国内各大厂商纷纷推出自己的网络测井系统,环鼎公司也推出了基于网络化的 580 成像测井系统[2]。与此同时,为了配合 ADSL 技术,井下仪器间总线必然网络化。但是井下恶劣的环境状况对井下的网络化系统也提出了严格的要求,例如板子尺寸、功耗、稳定性、实时性、抗干扰能力等。而嵌入式系统是为满足用户要求专门针对特定功能设计的,非常适合应用于井下仪器间的网络化总线的开发。同时针对目前测井系统普遍使用的共享式以太网总线提出一种新型结构,使其能够有效避免总线冲突,提高系统的稳定性和实时性。

1 井下仪器间总线工作原理

测井系统为获取井下仪器数据,需通过井下仪器间总线结合电缆传输系统将仪器采集数据及时传输至地面;同时通过电缆传输系统和井下总线可将地面控制命令下发至各仪器,从而实现地面系统和井下各仪器间的实时信息传递。井下仪器间总线在测井数据传输过程中起着极其重要的作用,其核心功能由各仪器内的通讯接口模块实现[3]

目前,Halliburton 的 LOG-IQ 系统和国内一些电缆传输系统使用 ADSL 技术的厂家都采用标准以太网的 10BASE-2 总线,其采用总线型拓扑结构,所有节点共享一条同轴电缆,所有数据(包括接受数据和发送数据)均通过此同轴电缆传输。所有节点共享10 Mb/s 带宽,如图 1 所示。

图 1 10 BASE-2总线拓扑结构 Fig. 1 10BASE-2 bus topology

上述这种总线型结构由于其数据链路层的介质访问控制方式采用的是带有冲突检测的载波侦听多路访问协议技术(CSMA/CD)[4],当有多个节点同时发送数据的时候将会发生总线冲突,故而这种总线型结构被认为是一种不确定性的网络系统。特别是对于响应时间要求比较严格的测井系统,由总线冲突而造成响应时间的不确定,使数据不能按要求正常传递,这在测井过程中不能够接受。

交换式以太网技术的发展和应用极大地改善了传统以太网中由于 CSMA/CD 而产生的不确定性问题,其采用了全双工和微网段方法,将冲突域隔离控制在交换机的各个端口,并通过交换机自身的队列调度机制基本保证了数据传输的确定性[5],也在一定程度上提高了网络系统的实时性。

本文介绍一种带有交换功能的仪器间网络通信模块,通过模块与模块级联的方式来形成井下仪器间总线,井下仪器间的连接采用 10Base-T 标准,所使用的传输介质为 2 对双绞线:一对负责接收网络数据,一对负责发送网络数据,互不干扰,故因其全双工的工作方式,从而彻底消除总线上冲突的可能性。交换机与交换机之间发送和接收均可独享 10 Mb/s 带宽。其总线构成如图 2 所示。

图 2 10 BASE-T交换式以太网总线 Fig. 2 10BASE-2 switched ethernet bus

每个网络通信模块的功能由以太网交换和以太网数据处理两大部分组成,主要完成以太网数据的接收并与采集单元进行数据交换,将采集单元的数据打包成以太网数据包向地面传输并将地面下发的命令传给采集单元。以太网数据发送出去后会到达下一级网络通信模块的交换芯片,通过查询地址表后直接通过相应端口转发出去,从而避免因总线繁忙而随机重发的不确定性,同时交换芯片因其功能特殊性,转发时间非常短且时间相对固定,不会引起严重的网络延时。

2 网络通信模块的实现 2.1 网络通信模块的硬件组成

本设计采用交换芯片 + ARM 处理器的一体化简洁方式来实现整个网络通信模块的复杂功能,交换芯片负责井下各仪器之间以太网的连接,其接收总线上的网络数据并根据 MAC 地址表而决定此包数据的转发方向;ARM 处理器上运行操作系统和 TCP/IP 协议栈,首先由 ARM 的外设串口接收该仪器采集板的数据并将其封装为以太网数据包,然后由 ARM 的外设网口发送至交换芯片,从而实现该仪器的数据能发送至井下以太网总线上。同时从以太网总线上接收到地面下发的命令,经由 ARM 接收到以太网数据包,从中还原命令体后由串口将命令数据发送至仪器采集板来实现地面系统对井下仪器的控制。

图 3 所示为网络通信模块的硬件原理框图。

图 3 模块原理框图 Fig. 3 Module block diagram

ARM 芯片基于 ARM7TDMI 内核,自带 Flash 和 RAM,同时其外设丰富,集成了一个以太网 MAC,非常适合网络应用,与交换芯片的 MAC 通过 MII 接口无缝连接。交换芯片含有多个 10M/100M 自适应的 PHY 接口,还有 2 k 的地址表,可自动学习地址表,且提供哈希查找算法,其转发网络包的速度非常快。

此外,交换芯片通过本身2个 PHY 接口与其他网络通信模块连接,每个 PHY 接口处都使用网络变压器实现与外部的电气隔离,以防止不同电压通过总线传输损坏模块。

2.2 嵌入式软件的实现

嵌入式软件设计主要包括μC/OS-II 实时操作系统的移植和添加可裁剪的 TCP/IP 协议栈,并且编写底层驱动程序[6]

μC/OS-II 是一款开源的嵌入式实时操作系统,其代码量虽小,但执行效率较高、实时性和扩展性也好,编译后最小能够至 2 kb,非常适合存储资源有限的处理器。且μC/OS-II 的代码除了与硬件有关的部分用汇编语言编写,其余的全部用 c 语言编写,非常方便移植到不同的处理器上。移植时需修改的部分也主要集中在底层与硬件相关的部分,需要用汇编语言编写。

但μC/OS-II 作为一种结构简单、对 CPU 的 RAM 和 ROM 要求不高的嵌入式操作系统,它自身并不支持 TCP/IP 网络协议,所以还需在μC/OS-II 的基础上移植一款支持 TCP/IP 协议的简单网络协议栈。

LwIP 作为一种轻量级 TCP/IP 协议栈,是本设计方案的不二选择。它使用了无需数据复制且经过裁剪的 API,因此能够有效地降低代码量及内存使用量,从而能方便地应用到存储资源有限的嵌入式系统当中[7]。同时,LwIP 协议栈还支持多线程操作,配合操作系统使用非常合适,能够最大限度的发挥其性能。进行 LwIP 协议栈的移植,主要是结合不同的操作系统编写操作系统模拟层。操作系统模拟层就是在底层操作系统和 LwIP 协议栈之间提供一个统一的接口,将各自的数据、信号量、任务进行统一封装和统一调配。

网络驱动程序主要包括 ARM 处理器的 MAC 层初始化,并通过 MDIO 接口配置交换芯片的工作模式,设置 MAC 中断处理函数,网络包数据的接收和发送等。

接口模块分硬件部分和软件部分。仪器数据流通过串口进入接口模块,由底层串口驱动控制硬件串口部分接收数据并将其发送给应用层,而应用层调用 LwIP 协议栈将数据封装为以太网包,再通过底层网络驱动控制硬件的网口将数据发送到以太网总线上,整个软件部分以实时操作系统μC/OS-II 为核心,软件结构清晰,处理数据简单方便,如图 4 所示。

图 4 软件设计结构分层 Fig. 4 Layered software architecture design
2.3 偶极子声波上的应用

偶极子声波测井仪作为一种典型的成像仪器,能够测量地层的纵波、横波和斯通利波,可识别裂缝性储层中裂缝发育井段及类型,判断裂缝有效性及裂缝系统区域有效性,进而有效划分储集层[8]。故而该仪器需从井下实时传输大量数据至地面。580 系统偶极子声波仪器完成一次采集周期所需时间为 1 s,而一次采集周期包含单极子测量周期、偶极 X 向测量周期和偶极 Y 向测量周期3个测量周期。偶极子声波仪器的接收阵列为 8 × 4 共 32 个接收传感器,每个传感器采集一道 512 bit的波形数据,则每秒所采集的有效数据为 98 304 bit。

偶极子声波与其他仪器对数据的要求不同,偶极子声波数据没有冗余量,1 bit数据错误将导致 1 s 的数据全部失效,也将完全反映在测井曲线上,因此偶极子声波对于数据可靠传输的要求也非常高。

网络通信模块与采集板之间通过 SPI 串口连接,每 40 ms 通信 1 次,每次接收数据 4 000 bit左右,由于以太网中的数据长度规定最大为1 500 bit,所以需将偶极子声波的数据进行分包传输,同时在每个分包上标记序号,以便数据到达地面系统后重新组包;同时还需接收地面系统命令以便在单极子测量、偶极X测量和偶极Y测量状态下进行切换。这些操作在μC/OS-II 多线程应用下都易于实现。目前,此网络通信模块在 580 偶极子声波仪器上使用并成功测井。图 5 为 580 偶极子声波仪器在山东孤古八井测井所获取的速度分析曲线。

图 5 偶极子声波仪器在孤古 8 井的速度分析曲线 Fig. 5 The speed analysis curve of Dipole acoustic instrumental logging at Gugu 8 well
3 测试过程及结果

测试主要分为以下3个部分:

1)利用偶极子声波仪器测试网络通信模块的稳定性、可靠性和高温性能。

由于偶极子声波数据量最大,最具代表性,所以优先利用偶极子声波仪器来测试网络通信模块单板性能。将偶极子声波仪器放入烘箱,设置箱内温度 175 ℃,在经过 48 h 持续正常工作之后,累计上传数据达 16 Gb,统计结果表明期间数据传输准确无误,说明了网络通信模块本身的稳定可靠,并可耐 175 ℃高温。

2)测试由网络通信模块级联组成的以太网总线传输时的实时性能。

N 个网络通信模块逐级级联,在最上端接入笔记本电脑作为主机,测试由各个网络通信模块正常传输仪器数据至主机所花的时间 T,如表 1 所示。

表 1 各通信模块依次到主机的时间 Tab.1 Each communication module sequentially to the host time

表 1 可看出,除去每级网络通信模块 ARM 本身处理自身数据所花时间外,每级模块之间的传输时间约为 0.03 ms,即网络交换芯片转发数据仅需 0.03 ms,且此转发时间相当稳定,对于测井系统对时间精度 1 ms 的要求来说,完全可以忽略不计。由此看出,交换式以太网总线完全满足当前测井系统对实时性的要求。

3)测试整机组合的井下网络系统的稳定性和可靠性。

将网络通信板装入各井下仪器中,连接各井下仪器并经由以太网直接连接上位机,供电并下发启动命令,然后记录各仪器上传的网络数据包,经长时间记录发现,网络数据包经由井下以太网上传一切正常,无丢包现象,如图 6 所示,无明显延迟现象,所有网络数据包都按预设时间顺序先后到达,各仪器对上位机下发的命令能及时做出响应。说明整机组合的井下网络系统稳定、可靠。

图 6 测试数据截图 Fig. 6 Screenshot of test data
4 结语

本文所述方案结合了当前以太网发展方向,配合嵌入式系统的应用,不仅解决了井下使用传统以太网总线结构所造成的不确定性,而且简化井下网络系统,使其在尺寸、功耗、实时性等方面更为优越,完全满足当前测井需求。在嵌入式系统应用下,未来需要扩展功能方面也更为简洁方便。目前,这种新型交换式以太网总线已应用于环鼎 580 网络测井系统中,挂接了常规大满贯测井仪器,还有偶极子声波仪器等成像仪器,并进行了大量的现场测试,所有测试结果均达到了设计预期要求,并获得了令人满意的测井曲线,完全满足当前的大数据量网络化测井仪器的要求。

参考文献
[1] 肖立志, 谢然红,柴细元,等. 新世纪的测井技术——网络测井及其技术体系初探[J]. 测井技术, 2003, 27(1):6-10.
XIAO Li-zhi,XIE Ran-hong,CHAI Xi-yuan, et al. Well logging technology for the new century:Network-based logging technology[J].Logging Technology, 2003, 27(1), 6-10.
[2] 何明, 李英波. 580高速数据传输成像测井系统的研制[J]. 舰船科学技术, 2010, 32(4):80-84.
HE Ming, LI Ying-bo. Development of 580 high-speed data transmission imaging logging system[J].Ship Science and Technology, 2010, 32(4), 80-84
[3] 陈文轩, 岳宏图,陈文, 等. 网络化井下仪器数据总线研究[J]. 测井技术, 2011, 35(6):572-575.
CHEN Wen-xuan, YUE Hong-tu, CHEN Wen,et al. Downhole instrument data bus network research[J]. Logging Technology, 2011, 35(6), 572-575
[4] IEEE.802.3-2000-Part 3:Carrier sense multiple access with collision detecton (CSMA/CD) access method and physical layer specifications[S].[S.l.]:IEEE,2000:70-90.
[5] 毕旭, 李孝茹,傅志中.工业以太网技术的发展现状及趋势[J]. 自动化与仪器仪表, 2005(3):1-2, 6.
BI Xu, LI Xiao-ru, FU Zhi-zhong. Development status and trends of industrial ethernet technology[J]. Automation and Instrumentation, 2005(3), 1-2, 6.
[6] 傅海龙, 李谦,顾庆水,等. 基于ARM7的测井网络通信单元设计与实现[J]. 石油工业计算机应用, 2009(4):34-36.
FU Hai-long, LI Qian, GU Qing-shui.ARM7-based communications network logging unit design and implementation[J]. Petroleum Industry Computer Applications, 2009(4):34-36.
[7] 焦海波, 刘健康. 嵌入式网络系统设计:基于Atmel ARM7系列[M]. 北京:北京航空航天大学出版社, 2008.