王永濤,王書純,邵 春
(1.中國(guó)地質(zhì)大學(xué)(武漢)自動(dòng)化學(xué)院,湖北武漢 430074;2.中國(guó)地質(zhì)大學(xué)(武漢)資源學(xué)院,湖北 武漢 430074)
雙側(cè)向測(cè)井是地質(zhì)鉆井檢測(cè)中的一種重要地球物理方法,區(qū)域內(nèi)多口鉆井檢測(cè)數(shù)據(jù)網(wǎng)格化三維聯(lián)合反演能有效地發(fā)現(xiàn)油氣礦藏,實(shí)時(shí)接收到多口測(cè)井?dāng)?shù)據(jù)是區(qū)域反演解釋的關(guān)鍵[1-3]。目前,測(cè)井?dāng)?shù)據(jù)只保存在現(xiàn)場(chǎng)雙側(cè)向測(cè)井儀中,幾周后甚至幾個(gè)月后,野外作業(yè)完成后,數(shù)據(jù)才被拷貝回來(lái)反演解釋,實(shí)時(shí)性不佳。因此,雙側(cè)向測(cè)井儀遠(yuǎn)程無(wú)線監(jiān)測(cè)技術(shù)的研究具有重要的意義。
隨著無(wú)線通信技術(shù)的發(fā)展,ZigBee、藍(lán)牙、WiFi、LoRa、NB-IoT 等無(wú)線技術(shù)層出不窮,每種技術(shù)都有各自的特點(diǎn),ZigBee 和藍(lán)牙常用于物聯(lián)網(wǎng)節(jié)點(diǎn),功耗低,但帶寬低且傳輸距離短[4-7]。WiFi 雖然帶寬充足,但功耗大,適合近距離無(wú)線傳輸[8-9]。LoRa 功耗低,無(wú)線傳輸距離遠(yuǎn),但處于非授權(quán)頻段[10]。NB-IoT是近幾年新興起的一種廣域網(wǎng)通信技術(shù),功耗低、傳輸距離遠(yuǎn)、連接能力強(qiáng)、可以利用三大運(yùn)營(yíng)商的現(xiàn)有蜂窩網(wǎng)絡(luò)直接把數(shù)據(jù)上傳到云端服務(wù)器[11-12]。基于此,該文設(shè)計(jì)并實(shí)現(xiàn)了基于NB-IoT 無(wú)線通信技術(shù)的雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng),測(cè)井?dāng)?shù)據(jù)實(shí)時(shí)上傳到阿里云服務(wù)器,供專家反演解釋鉆井異常,尋找油氣等礦藏資源。
雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng)示意圖如圖1 所示,儀器由主控制器、電纜盤、地電極和探頭組成。探頭由9 個(gè)環(huán)形導(dǎo)電電極構(gòu)成,中間用高強(qiáng)度的絕緣塑料隔開,具有信號(hào)聚焦功能,在鉆井中移動(dòng),采集深側(cè)向和淺側(cè)向兩種地層視電阻率數(shù)據(jù)。電纜盤一端連接探頭,另一端連接主控制器,電纜線抗拉耐磨,傳輸控制命令和數(shù)據(jù),電纜盤還具有計(jì)算距離的功能,最小距離分辨率可達(dá)1 cm,為了現(xiàn)場(chǎng)使用方便,主控制器固定在電纜盤上。主控制器接收地層視電阻率數(shù)據(jù),通過(guò)屏幕顯示給現(xiàn)場(chǎng)技術(shù)人員,現(xiàn)場(chǎng)人員根據(jù)數(shù)據(jù)及時(shí)調(diào)整參數(shù),發(fā)送控制命令給探頭,主控制器內(nèi)置NB-IoT 無(wú)線天線,鉆井地層視電阻率數(shù)據(jù)以及鉆井基本信息除了存儲(chǔ)在現(xiàn)場(chǎng)儀器存儲(chǔ)器中,還通過(guò)NB-IoT 傳送到阿里云服務(wù)器。由于中國(guó)移動(dòng)支持眾多的云平臺(tái),便于后續(xù)平臺(tái)移植,儀器中內(nèi)置的是中國(guó)移動(dòng)卡,用中國(guó)移動(dòng)蜂窩網(wǎng)絡(luò)連接數(shù)據(jù)。總部或者全國(guó)各地的專家可以登錄阿里云平臺(tái),實(shí)時(shí)查看測(cè)井?dāng)?shù)據(jù),遠(yuǎn)程操控指導(dǎo)現(xiàn)場(chǎng)作業(yè),及時(shí)聯(lián)合分析項(xiàng)目區(qū)域內(nèi)多口鉆井雙側(cè)向測(cè)井?dāng)?shù)據(jù),網(wǎng)格化三維聯(lián)合反演,為整個(gè)項(xiàng)目作出科學(xué)分析和決策。
圖1 雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng)示意圖
雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng)電路設(shè)計(jì)比較復(fù)雜,由多個(gè)功能模塊組成,儀器硬件電路設(shè)計(jì)框圖如圖2所示。數(shù)據(jù)采集電路模塊負(fù)責(zé)模擬信號(hào)采集及數(shù)字轉(zhuǎn)化,探頭電極和地電極共同構(gòu)成電極網(wǎng)絡(luò),采集微弱信號(hào)時(shí),信號(hào)經(jīng)過(guò)濾波、放大等調(diào)理電路后,經(jīng)ADC轉(zhuǎn)化成數(shù)字信號(hào)。FPGA 芯片EP4CE22E22I8LN 負(fù)責(zé)系統(tǒng)電路邏輯功能和電阻率數(shù)據(jù)緩存功能,邏輯功能包括濾波電路中頻率分頻和ADC 輸入時(shí)鐘產(chǎn)生等。MCU 芯片PIC32MZ2048EFH144 是系統(tǒng)電路的控制核心,用于接收數(shù)據(jù)并與NB-IoT 模塊通信,發(fā)送數(shù)據(jù)給遠(yuǎn)程云服務(wù)器。NB-IoT 模塊電路設(shè)計(jì)是該文的重點(diǎn)內(nèi)容,其詳細(xì)介紹如下。
圖2 儀器硬件電路設(shè)計(jì)框圖
NB-IoT 模塊采用移遠(yuǎn)通信的BC26,它是一款低功耗、符合3GPP Rel.13 和Rel.14 協(xié)議標(biāo)準(zhǔn)的窄帶物聯(lián)網(wǎng)模塊[13-14]。圖3是BC26模塊電路原理圖,BC26通過(guò)串口和MCU 芯片PIC32MZ2048EFH144 通信,由于BC26串口是1.8 V電平,而MCU 串口電平是3.3 V,所以中間要加上電平轉(zhuǎn)化芯片TXS0108E,使數(shù)據(jù)正常通信。模塊中基帶電源和射頻電源電壓最低需求可低至2.1 V,正常情況使用3.3 V 電源,為了防止射頻數(shù)據(jù)發(fā)射時(shí),電壓掉落到2.1 V 以下,在BC26 模塊電源端并聯(lián)一個(gè)100 μF 的儲(chǔ)能電容和多個(gè)濾波電容,并且增加一個(gè)TVS 管提高電源抗浪涌能力。當(dāng)模塊通電后,置低PWRKEY 引腳來(lái)開機(jī),需要MCU初始化時(shí)把PIC_KEY 置“0”至少100 ms。BC26 模塊提供5 個(gè)SIM 卡專用引腳,連接SIM 卡座,DATA、CLK、RST 引腳分別串聯(lián)22 Ω電阻,用于抑制反射電流,并聯(lián)33 pF 電容用于消除射頻噪聲,5 條SIM 卡專用走線PCB 布線時(shí),應(yīng)遠(yuǎn)離電源線和射頻線路。模塊射頻接口連接50 Ω的射頻接頭和天線,達(dá)到最佳的發(fā)送數(shù)據(jù)效果。
基于NB-IoT 的雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng)軟件設(shè)計(jì)可分為兩部分,一部分是云服務(wù)器端產(chǎn)品設(shè)備實(shí)例設(shè)計(jì),另一部分是儀器端發(fā)送程序設(shè)計(jì),即MCU 通過(guò)BC26 實(shí)現(xiàn)網(wǎng)絡(luò)配置以及數(shù)據(jù)發(fā)送程序。
雙側(cè)向測(cè)井儀端點(diǎn)與阿里云服務(wù)器之間通信遵循Alink 協(xié)議,該協(xié)議是一種針對(duì)物聯(lián)網(wǎng)開發(fā)領(lǐng)域設(shè)計(jì)的數(shù)據(jù)交換規(guī)范,保障了儀器上線和數(shù)據(jù)發(fā)送接收都能夠順暢完成[15]。數(shù)據(jù)交互采用JSON(JavaScript Object Notation)格式,是一種易于編寫、解析容易、結(jié)構(gòu)清晰的文本數(shù)據(jù)格式,下面這段代碼是系統(tǒng)中使用的JSON 格式程序代碼,參數(shù)意義參看代碼后語(yǔ)句注釋。
云服務(wù)器物聯(lián)網(wǎng)平臺(tái)是用“產(chǎn)品”和“設(shè)備”概念來(lái)管理的。首先創(chuàng)建產(chǎn)品,如雙側(cè)向測(cè)井儀,一個(gè)產(chǎn)品下面可以添加很多設(shè)備,工程項(xiàng)目中有很多鉆井,一個(gè)鉆井即對(duì)應(yīng)云服務(wù)器中一個(gè)設(shè)備。創(chuàng)建雙側(cè)向測(cè)井儀產(chǎn)品時(shí),節(jié)點(diǎn)類型選擇“直連設(shè)備”,聯(lián)網(wǎng)方式選擇“蜂窩(2G/3G/4G/5G)”,數(shù)據(jù)格式選擇“Alink JSON”,認(rèn)證方式選擇“設(shè)備密鑰”,確認(rèn)創(chuàng)建成功后,在產(chǎn)品“功能定義”選項(xiàng)中增加需要存儲(chǔ)的數(shù)據(jù)名稱以及該數(shù)據(jù)的屬性,例如深側(cè)向電阻率,標(biāo)識(shí)符為“DRes”,取值范圍“0.0~50 000.0”,單位“Ω·m”等。每個(gè)鉆井都會(huì)繼承產(chǎn)品的屬性,并且擁有唯一的三元素信息。
雙側(cè)向測(cè)井儀端點(diǎn)中MCU 通過(guò)BC26 實(shí)現(xiàn)網(wǎng)絡(luò)配置以及數(shù)據(jù)發(fā)送。文中用實(shí)例來(lái)詳細(xì)說(shuō)明雙側(cè)向測(cè)井儀端點(diǎn)與MQTT 服務(wù)器建立通信的過(guò)程[16],以及數(shù)據(jù)上傳發(fā)布的實(shí)例代碼,步驟可分為五步。
第一步:查詢雙側(cè)向測(cè)井儀所在位置的中國(guó)移動(dòng)信號(hào)強(qiáng)度。NB-IoT 無(wú)線網(wǎng)絡(luò)比相同頻段的其他網(wǎng)絡(luò)信號(hào)更強(qiáng),儀器開機(jī)初始化后,首先檢查無(wú)線信號(hào)強(qiáng)度,AT 命令代碼為“AT+CSQ”,若返回字符串為“+CSQ: 25,0”,表示儀器注冊(cè)網(wǎng)絡(luò)成功。返回字符串中第一個(gè)值“25”表示信號(hào)強(qiáng)度,信號(hào)強(qiáng)度范圍為0~31,值越大表明儀器所處位置信號(hào)越好,一般值小于15 表明信號(hào)低,無(wú)法正常聯(lián)網(wǎng)通信。返回字符串中第二個(gè)值“0”表示誤碼率,其數(shù)值越小越好,如果數(shù)值過(guò)大,則需要檢查SIM 卡是否接觸不良或者震動(dòng)錯(cuò)位。這兩個(gè)值在儀器初始化后,會(huì)在雙側(cè)向測(cè)井儀LCD 屏幕上顯示出來(lái)。
第二步:配置雙側(cè)向測(cè)井儀在阿里云服務(wù)器的設(shè)備三元素信息。AT 命令代碼為AT+QMTCFG=“aliauth”,0,“gb71jJk2d2y”“,DBS2-23”“,cb03049f03 8bce988357f2386 3c3e9”,返回“ok”表示成功。每個(gè)雙側(cè)向測(cè)井儀都有唯一的三元素信息,分別為產(chǎn)品標(biāo)識(shí)符、設(shè)備名稱、設(shè)備密鑰。與阿里云服務(wù)器中設(shè)備實(shí)例一一對(duì)應(yīng),相當(dāng)于通信過(guò)程中的用戶名和密碼,只有三元素信息正確,雙側(cè)向測(cè)井儀發(fā)送的數(shù)據(jù)包才能存儲(chǔ)到云服務(wù)器相應(yīng)的實(shí)例中。
第三步:登錄打開阿里云MQTT 服務(wù)器,AT 命令代碼為“AT+QMTOPEN=0“,139.196.135.135”,1883”,返回“+QMTOPEN: 0,0”表示登錄成功,其他參數(shù)表示不成功。BC26 模塊除了上面AT 代碼中用IP 地址的方式登錄云服務(wù)器外,還可以用域名的方式登錄,例如:“iot-as-mqtt.cn-shanghai.aliyu ncs.com”,但域名解析有時(shí)會(huì)很慢,所以常用IP 方式登錄。參數(shù)中“1883”是阿里云MQTT 服務(wù)器端口號(hào)。
第四步:連接阿里云MQTT 服務(wù)器,AT 代碼為AT+QMTCONN=0,“ Duallaterolog ”,返回“+QMT CONN: 0,0,0”表示連接成功。代碼中字符串參數(shù)可以為任意值,不受約束,前面設(shè)備三元素已經(jīng)進(jìn)行唯一標(biāo)示。此處注意的是登錄和連接兩步之間的時(shí)間間隔不能超過(guò)10 s,否則會(huì)被服務(wù)器強(qiáng)行關(guān)閉,所以要求MCU 發(fā)送第三步AT 命令給BC26 模塊,接到正確返回信息后,立即發(fā)送第四步AT 命令,中間不要有秒級(jí)別延時(shí),同時(shí)把除了串口2 的其他中斷都關(guān)閉,防止程序跳轉(zhuǎn)。
第五步:發(fā)布雙側(cè)向測(cè)井儀數(shù)據(jù)給MQTT 服務(wù)器。AT代碼為:AT+QMTPUB=0,0,0,0,“/sys/gb71jJk 2d2y/DBS2-23/thing/event/property/post”“,“{id”“:7”,“version”:“2.3”,“params”:“{Borehole”:“DBS2-23”,“Depth”:“{value”:175.38},“DRes”:“{value”:62.9},“SRes”:“{value”:35.2}},“method”:“thing.event.property.post”}”,返回“+QMTPUB: 0,0,0”表示數(shù)據(jù)上傳發(fā)布成功。該步采用的是設(shè)備屬性上報(bào)物模型通信Topic,其中上報(bào)內(nèi)容標(biāo)識(shí)符Borehole、Depth、DRes、SRes 分別表示鉆井號(hào)、鉆井深度、深側(cè)向電阻率、淺側(cè)向電阻率,與阿里云MQTT 服務(wù)器上的設(shè)備實(shí)例標(biāo)識(shí)符一一對(duì)應(yīng),服務(wù)器收到數(shù)據(jù)包后,根據(jù)JSON格式解析,分別把數(shù)據(jù)存儲(chǔ)到各個(gè)設(shè)備實(shí)例標(biāo)識(shí)符中,有“圖表”和“表格”兩種方式顯示多個(gè)數(shù)據(jù)供專家分析使用。
系統(tǒng)儀器組裝完成后,經(jīng)過(guò)了多次室內(nèi)調(diào)試和現(xiàn)場(chǎng)測(cè)試。圖4 是雙側(cè)向測(cè)井儀主控制器實(shí)物圖,為了便于運(yùn)輸和現(xiàn)場(chǎng)使用方便,主控制器固定在電纜盤上,圖中有兩根無(wú)線天線,右邊是WiFi天線,用于發(fā)送數(shù)據(jù)給現(xiàn)場(chǎng)技術(shù)工程師,在嘈雜的野外現(xiàn)場(chǎng),無(wú)線連接有利于技術(shù)人員操作儀器,左邊是NB-IoT 天線,用于同步上傳數(shù)據(jù)到云服務(wù)器,供遠(yuǎn)程專家分析和決策。
圖4 雙側(cè)向測(cè)井儀主控制器實(shí)物圖
現(xiàn)場(chǎng)測(cè)試數(shù)據(jù)通過(guò)NB-IoT 網(wǎng)絡(luò)發(fā)送到云服務(wù)器中顯示并存儲(chǔ),圖5 是阿里云服務(wù)器數(shù)據(jù)界面截圖,從圖中可以清晰看到鉆井號(hào)、鉆井深度、深側(cè)向電阻率、淺側(cè)向電阻率各個(gè)參數(shù)數(shù)據(jù),并且數(shù)據(jù)是實(shí)時(shí)更新的。遠(yuǎn)程專家可以隨時(shí)查看存儲(chǔ)的歷史數(shù)據(jù),通過(guò)表格或曲線的方式分析參數(shù)數(shù)據(jù),圖6 為云服務(wù)器歷史數(shù)據(jù)曲線圖表截圖。
圖5 阿里云服務(wù)器數(shù)據(jù)界面截圖
圖6 云服務(wù)器歷史數(shù)據(jù)曲線圖表截圖
該文對(duì)雙側(cè)向測(cè)井儀遠(yuǎn)程監(jiān)測(cè)系統(tǒng)進(jìn)行了研究,設(shè)計(jì)并實(shí)現(xiàn)了基于窄帶物聯(lián)網(wǎng)模塊的硬件數(shù)據(jù)發(fā)送裝置和云服務(wù)器端軟件實(shí)例。實(shí)驗(yàn)結(jié)果表明,雙側(cè)向測(cè)井儀野外現(xiàn)場(chǎng)數(shù)據(jù)能實(shí)時(shí)顯示并存儲(chǔ)在云服務(wù)器中,供區(qū)域內(nèi)多口鉆井聯(lián)合反演使用,系統(tǒng)實(shí)用性高、性能穩(wěn)定,具有良好的市場(chǎng)應(yīng)用前景。