潘 輝,何新霞,劉斯特
(中國石油大學(華東) 新能源學院,山東 青島 266580)
隨著經濟的發展與科技的進步,石化產品的交易量不斷提升,石化車間的安全問題需要更加重視。石化車間的生產設備多為高溫高壓設備、同時堆積了大量危險品,若發生安全事故,會造成重大經濟損失,還可能對環境安全和人們的生命安全造成很大危害[1]。同時,石化行業的泄漏監測問題和預警問題近幾年來十分突出,惡性事故頻繁發生,而對泄漏未能達到及時預警是事故發生的重要原因之一[2]。
為保證工廠內部的安全,定時對工廠內部的溫度、煙霧濃度等環境狀況進行檢查成了日常必不可少的工作,稍不留神還會造成錯檢漏檢的情況,嚴重時甚至會引起火災等安全事故的發生[3]。石油化工車間的危險氣體泄漏主要分為可燃氣體和有毒氣體,目前企業普遍依靠固定位置氣體傳感器進行監測,然而其效果并不理想。智能巡檢技術雖蓬勃發展,但在油氣系統安全檢測方面應用并不廣泛,根據生產需要在石化車間設立固定區域巡檢,通過簽到等方式進行檢查,對巡檢過程中發現的問題和異常情況用通訊設備報告上級工作人員,并對其進行記錄的人工巡檢方式依舊普遍存在。A*算法作為最基本的路徑規劃算法之一,其最大優勢就是可根據需求設計啟發函數,從而得到滿足需求的規劃路線,進而控制巡檢機器人按照所得路徑進行巡檢。目前市場上的巡檢機器人功能單一,無法適應石化車間復雜的生產環境,更無法與原有的監測系統相配合[4]。有必要設計一款智能巡檢機器人,代替工作人員進行巡檢,通過A*算法規劃路徑,與原有的固定傳感器監測系統配合,擴大實時監測的空間,提高動態監測效率,降低事故發生率。
本文設計了以巡檢機器人為核心的石油化工車間智能巡檢系統,利用柵格法對車間環境建模,通過A*算法規劃巡檢路徑,以DSP為核心控制器實現機器人自動循跡,基于WiFi模塊建立無線通信網絡,使用C++Builder設計人機交互界面,實現車間巡檢的智能化。
石化車間的復雜環境決定了傳統的固定位置傳感器監測系統具有較大的局限性,由于條件限制,監測系統存在盲區。當盲區發生危險氣體泄漏時,因未能及時發現問題,可能會產生嚴重后果。同時,傳統監測系統大都采用數據的有線傳輸,存在成本高,布線復雜,抗干擾能力差等問題[5]。
為適應廠房復雜環境,設計的巡檢機器人具有較強的運動能力,可以根據上位機規劃的路徑自動循跡;在環境監測方面,可實現危險氣體濃度、溫度等多種指標的實時檢測,并將數據發送給上位機動態顯示;在通訊方面,利用WiFi模塊可以實現中遠距離實時通信,使工作人員處于安全的工作環境中[6-7];在人機交互方面,上位機按A*算法規劃出巡檢路徑并將其發送給巡檢機器人,同時監控界面能夠實時顯示車間環境狀況,對異常情況自動報警并提醒工作人員及時處理,提高了工作的安全性。
系統共分為兩部分:智能巡檢機器人部分和上位機部分。其中巡檢機器人部分由3個模塊構成:運動控制模塊、環境感知模塊以及無線通信模塊;上位機部分由兩個模塊構成:監測控制模塊及無線通信模塊。運動控制模塊以TMS320F28335型號的DSP為核心,控制驅動電機和轉向舵機,得到A*算法的規劃路徑后實現自動循跡。環境感知模塊由環境傳感器測取模擬量數據,通過DSP的ADC單元轉換為數字量再由通信模塊將數據發送給上位機。兩部分的無線通信模塊都是由ATK-ESP8266型號的WiFi模塊構成,二者建立通信網絡以實現上位機與機器人的實時通訊。上位機監測控制模塊由C++Builder開發設計,負責規劃巡檢路徑,發送控制指令給機器人,接收環境數據并動態顯示,以實現人機交互功能。智能巡檢系統構成如圖1所示。

圖1 智能巡檢系統構成示意圖
巡檢機器人采用后輪驅動,驅動電機為直流電機,選擇L298N為電機驅動器,此外利用AB相正交旋轉編碼器檢測轉速信號,配合PID算法實時調節電機轉速[8]。正常工作狀態下,WiFi模塊處于STA工作模式下,上位機(服務器)通過無線網絡將控制指令發送給DSP(客戶端),DSP根據指令通過EPWM模塊輸出對應占空比的脈沖信號給L298N,進而控制電機轉速。同時,旋轉編碼器與驅動電機相連,可以實時檢測轉速并以脈沖信號形式發送給DSP的ECAP模塊,通過增量式PID算法實時調整DSP輸出PWM信號的占空比,達到較為精確的速度控制效果[9]。
巡檢機器人由前輪負責轉向,轉向舵機型號為MG99R,該舵機接收周期為20ms的PWM脈沖,通過控制高電平時間決定轉彎的角度,最高為±60°(1 ms/2 ms)。此外,為減小轉彎時帶來的誤差,采用MPU6050模塊檢測機器人的轉彎角度和加速度并反饋給DSP。當需要轉向時,DSP通過EPWM模塊輸出周期為20 ms,高電平時間特定的脈沖信號給舵機,舵機此時按照要求方向轉向,同時MPU6050模塊能夠反饋此時巡檢機器人的轉彎角度和加速度,通過計算可得當前時刻機器人運動姿態,根據機器人姿態信息不斷調整EPWM輸出的脈沖信號,可實現轉向的精確控制。機器人運動控制硬件連線如圖2所示。

圖2 機器人運動控制硬件連線示意圖
巡檢機器人的環境檢測量為石化車間典型的危險氣體甲烷、一氧化碳和溫度,所有傳感器采用模擬量輸出接口,利用DSP中的ADC轉換單元,實現環境數據的檢測。TMS320F28335型號DSP具有16個ADC單元,理論上最多可以實現16路環境狀態量監測。采用MQ-4模塊檢測甲烷濃度,MQ-7模塊檢測一氧化碳濃度,YL-38模塊檢測環境溫度。選用的環境傳感器的模擬量電壓輸出范圍均為0~5 V,而DSP的A/D接口輸入電壓范圍為0~3 V,為防止輸入電壓過高燒壞DSP,設計分壓電路將模擬量電壓降為0~2.5 V后,再接入DSP的A/D模塊。信號調理電路原理(以甲烷傳感器為例)如圖3所示。

圖3 模擬量信號調理電路原理圖
以甲烷氣體為例,DSP對應端口的電壓范圍為0~2.5 V,ADC模塊轉換后的數字值A0為:
(1)
其中:A為輸入模擬值,ADCLO接地為0。
可得A0范圍為0~3 412.5,MQ-4模塊輸出電壓在4 V時甲烷氣體就已達到危險濃度,故報警值取A為2 V時A0的值,為2 790。另外,當濃度值為警報值的80%即2 232時,發送預警信號,提醒工作人員關注。
實時性是衡量巡檢機器人工作效果的一個重要指標,為保證發生危險時工作人員能夠及時得到提醒,采用WiFi模塊構建無線通信網絡,實現上位機與巡檢機器人的實時數據傳輸。WiFi模塊型號為ATK-ESP8266,其采用串口(UART)與DSP或上位機通信,內置TCP/IP 協議,可實現串口與WiFi之間的數據轉換傳輸。
通過AT指令對WiFi模塊進行設置,使其工作于STA模式下:上位機連接的WiFi模塊為Server(服務器),巡檢機器人機連接的WiFi模塊為Client(客戶端)。正常工作時,服務器建立特定名稱與密碼的WiFi網絡,客戶端主動搜索WiFi網絡名稱并連接,二者建立無線連接后便可進行數據通信。巡檢機器人將環境、速度以及位置數據進行整合,然后將其發送給上位機,同時,上位機也可以通過無線網絡向巡檢機器人發送控制指令與規劃路徑。無線通信網絡構成如圖4所示。

圖4 無線通信網絡構成
盡管導航方式有所不同,機器人始終要完成路徑規劃的任務[10-11]。本文采用A*算法對機器人進行路徑規劃,其代價估計函數f(n)可以表示為如下:
f(n)=g(n)+h(n)
(2)
其中:g(n)為代價函數,表示從起始節點到當前節點n的實際花費的代價,h(n)為啟發函數,表示從當前節點n到最終目標節點的最優路徑的代價估計[11]。
在A*算法中,啟發函數h(n)決定了其搜索效率,由于應用要求不同,h(n)需根據實際情況設計。在石化車間的巡檢路徑規劃中,改變啟發函數h(n),可以得到滿足不同巡檢需求的規劃路徑。
本文在h(n)的設計中加入獎勵/懲罰機制:滿足巡檢要求的前提下,在機器人轉彎時進行懲罰,維持原行進方向則進行獎勵,保證機器人的運行方式為直行(0°),掉頭(180°),左轉(-90°),右轉(+90°),從而減少機器人運動時由于頻繁轉彎帶來的誤差。在計算h(n)時加入獎勵/懲罰系數k,此時f(n)為:
f(n)=g(n)+kh(n)
(3)
具體效果為:在機器人進行下一個節點判斷時通過系數k改變待選節點的f值,當維持原方向時k小于1,改變方向時k大于1,選擇f值最小的待選節點為下一個當前節點。
在進行路徑規劃時,定義OPEN和CLOSED兩個集合:OPEN集表示等待檢查的節點集合,CLOSED集表示已經搜索過的節點集合。不斷的比較OPEN集中當前節點的擴展節點的f、g、h值,并根據比較結果更新兩個集合,當前節點為目標節點時,路徑規劃結束,此時按順序提取CLOSED集中的節點,即為巡檢路徑。路徑規劃流程如圖5所示。

圖5 A*算法路徑規劃流程圖
路徑規劃在上位機中完成,采用C語言編程。首先對多個巡檢地點按照坐標值進行排序,在確定起點位置后,將起點設為當前節點,第一個巡檢地點為目標節點,對其進行路徑規劃,到達目標節點后將其設為當前節點,下一個巡檢地點為目標節點,以此往復,直至到達最后一個目標節點即起始位置后,路徑規劃結束,此時按照順序提取CLOSED集中的節點,即為巡檢機器人規劃路徑。
巡檢機器人在自動循跡時,為保證實際行進路線的正確性,需要對其進行較為精確的控制,故選用旋轉編碼器和MPU6050模塊(三軸陀螺儀,三軸加速度計)輔助DSP進行運動控制。旋轉編碼器能夠檢測當前時刻電機轉速,配合增量式PID算法實現車速閉環調節;MPU6050能夠檢測機器人當前偏移角度和三軸加速度,配合DSP及時調整機器人運動姿態。
機器人前后輪的運動均為閉環控制,兩個閉環控制并行運行,保證其相互配合但不會產生干擾,提高控制效率與調節精度。直行時驅動電機輸出較高轉速,轉彎時驅動電機輸出較低轉速,轉彎完成后恢復較高速度。在高低速切換時,采取增量式PID算法進行閉環調節,同時在整個運動過程中,MPU6050實時反饋機器人偏移角度與偏移加速度,保證機器人行進路線的正確性。
機器人運動控制程序均在DSP中實現,通過上位機軟件CCS6.0使用C語言編程。在正常運行狀態下,上位機會發送運動或停止信號給DSP,當信號為運動時,DSP會接收巡檢路徑并判斷下一步運動方式:在直行時,巡檢機器人保持當前運行方向以及運行速度不變;在轉彎時,巡檢機器人降低轉速,并按照規定方向進行轉向。整個運動過程中PID程序與MPU6050模塊保持運行狀態,時刻調整機器人運動速度及姿態,保證正確性。機器人運動控制流程如圖6所示。

圖6 機器人運動控制流程圖
通過C++Builder開發設計上位機界面,其主界面包括用戶登錄,系統運行狀態監測,巡檢路徑規劃等。上位機利用柵格法對車間環境進行建模,根據工作人員要求設置巡檢地點,然后通過A*算法規劃巡檢路徑并利用WiFi模塊將其發送給巡檢機器人,同時將所接收到的車間環境數據和巡檢機器人位置數據進行可視化處理,并實時顯示。所有歷史數據自動分類并存入數據庫,供工作人員查閱調用。在檢測到環境數據到達預警值時能夠提前預警,在環境數據超標時能夠發出報警信號,并且允許用戶通過上位機控制巡檢機器人。上位機主界面如圖7所示。

圖7 上位機主界面
上位機利用MSComm控件實現串口通訊功能,MSComm是Microsoft公司開發的一款ActiveX控件,為用戶設計軟件提供了獲取上位機串口通信權限的功能[12]。
通過在Matlab2016A軟件上的仿真,驗證了加入獎勵/懲罰機制的A*算法的可行性與準確性。對某20*20(m)的生產車間建模,單位柵格為1*1(m),其路徑規劃結果如圖8所示。

圖8 某生產車間路徑規劃圖
利用CCS6.0的Graph功能,監控電機實際轉速,結果顯示增量PID算法可在1 s內完成當前轉速到給定轉速的調節,穩定運行時車速偏差小于2 r/min,滿足系統要求的穩定性以及快速性。調速效果如圖9所示。

圖9 電機PID調速效果圖
經過整體測試,巡檢系統運行正常,用戶登錄系統后,可以按照需求規劃路徑,并控制巡檢機器人的啟動與停止,同時系統運行狀態監控界面可以動態的顯示當前時刻環境數據以及機器人位置,在溫度或危險氣體濃度超過警戒值時,給予工作人員提示與報警。通過對巡檢機器人實時位置的持續監控,得到其運行路徑,經對比,與規劃路徑完全一致。環境量指示燈共3種狀態,即安全(不超過正常范圍的80%),警告(正常范圍的80%~100%),危險(超出正常范圍)。系統運行狀態監控界面如圖10所示。

圖10 系統運行狀態監控界面
本文設計的巡檢機器人可代替工作人員對車間進行巡檢,降低了成本的同時提高了巡檢的安全性。利用A*算法進行路徑規劃,可根據不同車間環境制定對應巡檢路線,適用性強,靈活性好。巡檢機器人自動化程度高,由計算機、DSP等控制,能夠自主完成設定的巡檢任務;利用WiFi模塊構成無線通信網絡,實時性好,可實現中遠距離數據的快速傳輸,同時保證了工作人員的人身安全。將巡檢機器人與原有固定位置傳感器相配合,解決了原有監測系統存在的監測盲區問題,能夠對危險提前預警,提高生產安全,降低事故的發生率。