曾維陽
(國網(wǎng)福建南平市建陽區(qū)供電有限公司,福建 南平 354200)
變電站是連接各個(gè)城市高壓輸配電網(wǎng)的中心節(jié)點(diǎn),變電站運(yùn)行設(shè)備巡檢能有效預(yù)防電網(wǎng)事故的發(fā)生[1-2]。傳統(tǒng)的變電站運(yùn)行設(shè)備巡檢需要變電運(yùn)維人員人工巡檢,通過人工發(fā)現(xiàn)設(shè)備異常情況,并判斷運(yùn)行中的設(shè)備是否出現(xiàn)故障。但在變電站的巡檢過程中,存在人工無法準(zhǔn)確觀察高空電力設(shè)備詳細(xì)情況的問題,而使用移動(dòng)機(jī)器人能有效解決該問題[3]。同時(shí),使用移動(dòng)機(jī)器人巡檢還能減少變電運(yùn)維人員的工作負(fù)擔(dān),具有廣闊的應(yīng)用前景。
但是,移動(dòng)機(jī)器人各模塊的通信配置,過程過于冗雜,而使用機(jī)器人操作系統(tǒng)(ROS)能有效解決移動(dòng)機(jī)器人各模塊之間的通信問題。同時(shí),在ROS中集成眾多功能包,能提高代碼復(fù)用率與規(guī)范性。
在變電站中,移動(dòng)機(jī)器人要進(jìn)行移動(dòng),往往需要采集變電站三維環(huán)境信息,并建立三維變電站環(huán)境模型,從而完成避障及目標(biāo)識(shí)別。常見的三維信息獲取方法有雙目相機(jī)拍照耦合、單目相機(jī)運(yùn)動(dòng)拍照耦合、RGBD攝像頭通過紅外光反射。在變電站中,常使用RGBD攝像頭提取三維信息,與其他視覺相比,RGBD攝像頭能直接獲取三維點(diǎn)云信息,不需要復(fù)雜的數(shù)據(jù)處理,具有直觀性、簡(jiǎn)易性?;赗OS的移動(dòng)機(jī)器人可以采用ORK功能包與linemod算法及其改進(jìn)算法相結(jié)合或通過對(duì)PCL(Point Cloud Library)點(diǎn)云庫數(shù)據(jù)處理的方法識(shí)別目標(biāo)。
攝像頭(以Kinect為例)采用光編碼(Light Coding)技術(shù)獲取三維數(shù)據(jù),獲取場(chǎng)景的三維信息以640×480像素分辨率、每秒30幀成像。獲取三維信息在ROS中的Rviz可視化工具內(nèi)成像如圖1所示。
(a)墻體部分輪廓三維數(shù)據(jù) (b)窗戶整體特征三維數(shù)據(jù)
點(diǎn)云庫數(shù)據(jù)處理是指基于ROS的移動(dòng)機(jī)器人在機(jī)器人操作系統(tǒng)上的PCL點(diǎn)云庫建立一個(gè)常見物體模型數(shù)據(jù)庫,采用一種基于顏色和法線的分割方法對(duì)Kinect點(diǎn)云圖像進(jìn)行分割,并通過點(diǎn)云提取、點(diǎn)云分割、濾波、特征描述等處理后,實(shí)現(xiàn)對(duì)物體的實(shí)時(shí)識(shí)別與定位。
使用PCL點(diǎn)云庫進(jìn)行三維點(diǎn)云數(shù)據(jù)處理前,首先要將目標(biāo)物點(diǎn)云數(shù)據(jù)提取到點(diǎn)云庫中,并進(jìn)行預(yù)處理和三維重建,獲得三維點(diǎn)云圖,以方便后期的數(shù)據(jù)處理。在獲取點(diǎn)云數(shù)據(jù)并預(yù)處理之后,點(diǎn)云數(shù)據(jù)將存在于點(diǎn)云庫中,之后需要進(jìn)一步處理。
LineMod算法由Hinterstoisser等[4-6]提出,通過使用Opencv+LineMod算法,將獲取的三維視覺信息與模型庫中的模型進(jìn)行匹配,從而識(shí)別目標(biāo)。該算法可以解決復(fù)雜背景下3D物體的實(shí)時(shí)檢測(cè)與定位,可以應(yīng)對(duì)無紋理的情況,且不需要冗長(zhǎng)的訓(xùn)練時(shí)間。Patch-LineMod算法則是針對(duì)LineMod算法不能解決的多目標(biāo)重疊物體復(fù)雜場(chǎng)景下的識(shí)別問題進(jìn)行了改進(jìn),使LineMod算法能實(shí)現(xiàn)多目標(biāo)重疊物體在復(fù)雜場(chǎng)景下的識(shí)別。CT-LineMod算法由Zhang等[7]提出,針對(duì)Patch-LineMod算法識(shí)別機(jī)制不夠合理,特征分類形成模板的過程依據(jù)不夠充分的問題,進(jìn)行進(jìn)一步改進(jìn),這在一定程度上解決了復(fù)雜場(chǎng)景重疊物體的識(shí)別問題,并提升了識(shí)別率和準(zhǔn)確度。
測(cè)試評(píng)估LineMod、Patch-LineMod、CT-LineMod算法在3種場(chǎng)景下的召回率,結(jié)果如圖2所示。LineMod對(duì)咖啡杯的召回率為5%,Patch-LineMod對(duì)咖啡杯的召回率為41%,CT-LineMod對(duì)咖啡杯的召回率為44%;LineMod對(duì)果汁盒的召回率為25%,Patch-LineMod對(duì)果汁盒的召回率為44%,CT-LineMod對(duì)果汁盒的召回率為46%;LineMod對(duì)咖啡杯和果汁盒混合的召回率為1%,Patch-LineMod對(duì)咖啡杯和果汁盒混合的召回率為37%,CT-LineMod對(duì)咖啡杯和果汁盒混合的召回率為38%;LineMod的平均召回率為11%,Patch-LineMod的平均召回率為41%,CT-LineMod的平均召回率為43%。
圖2 比較結(jié)果
在變電站中,安全工具的分揀與倒閘操作可以通過控制機(jī)械臂來實(shí)現(xiàn)[8],而三維視覺移動(dòng)機(jī)器人可以使用ROS進(jìn)行機(jī)械臂控制,無需再采購機(jī)械臂配套的控制系統(tǒng),可采用通用的機(jī)械臂功能包完成對(duì)機(jī)械臂的控制,降低了采購和更換機(jī)械臂的費(fèi)用,在成本方面具有優(yōu)勢(shì)?;赗OS的三維視覺移動(dòng)機(jī)器人機(jī)械臂抓取控制常使用ROS中的MoveIt!功能包,將SolidWorks三維視覺移動(dòng)機(jī)器人模型轉(zhuǎn)換成URDF文件格式導(dǎo)入MoveIt!功能包中,并通過MoveIt!功能包生成各種配置文件,實(shí)現(xiàn)物品抓取、運(yùn)動(dòng)規(guī)劃,解決物品碰撞規(guī)避問題。MoveIt!功能包結(jié)構(gòu)框架如圖3所示,機(jī)械臂通過MoveIt!功能包在Rviz中進(jìn)行機(jī)械臂路徑規(guī)劃并抓取盒子中目標(biāo)的規(guī)劃如圖4所示,在Gazebo中進(jìn)行真實(shí)仿真模擬如圖5所示。目前,使用ROS中的MoveIt!包的機(jī)器人有65種,MoveIt!功能包也能獨(dú)立作為一個(gè)軟件使用。
圖3 MoveIt!功能包結(jié)構(gòu)框架
圖4 MoveIt!功能包在Rviz中進(jìn)行機(jī)械臂路徑規(guī)劃
圖5 MoveIt!功能包在Gazebo中進(jìn)行真實(shí)仿真模擬
在進(jìn)行電力設(shè)備巡視時(shí),當(dāng)前的移動(dòng)機(jī)器人無法同時(shí)進(jìn)行移動(dòng)與檢查電力設(shè)備運(yùn)行情況,而基于ROS的三維視覺移動(dòng)機(jī)器人可通過路徑規(guī)劃與SLAM(simultaneous localization and mapping)同時(shí)進(jìn)行移動(dòng)并檢查電力設(shè)備運(yùn)行情況,節(jié)約電力設(shè)備巡視時(shí)間。基于ROS的三維視覺移動(dòng)機(jī)器人智能運(yùn)動(dòng)底盤控制常使用Move_base功能包與Navigation導(dǎo)航功能包進(jìn)行智能運(yùn)動(dòng)底盤的路徑規(guī)劃,同時(shí)使用Gmapping、ACML、Hector、Cartographer等算法包進(jìn)行SLAM即時(shí)定位與地圖構(gòu)建,從而獲取周圍環(huán)境信息,完成三維視覺移動(dòng)機(jī)器人底盤運(yùn)動(dòng)控制。通過路徑規(guī)劃、導(dǎo)航相關(guān)功能包在Rviz中進(jìn)行智能運(yùn)動(dòng)底盤運(yùn)動(dòng)控制仿真實(shí)驗(yàn),如圖6所示。
圖6 智能運(yùn)動(dòng)底盤運(yùn)動(dòng)控制仿真實(shí)驗(yàn)圖
基于ROS的三維視覺移動(dòng)機(jī)器人智能運(yùn)動(dòng)底盤控制常使用Move_base功能包、Navigation導(dǎo)航功能包進(jìn)行智能運(yùn)動(dòng)底盤的路徑規(guī)劃,Move_base功能包架構(gòu)如圖7所示。
圖7 Move_base功能包架構(gòu)
基于ROS的三維視覺移動(dòng)機(jī)器人智能運(yùn)動(dòng)底盤控制常通過使用Gmapping、Rgbdslam、ORB_SLAM、Hector-slam、Cartographer等算法包進(jìn)行SLAM即時(shí)定位與地圖構(gòu)建,獲取周圍環(huán)境信息進(jìn)行移動(dòng)與避障。運(yùn)用Gmapping算法包在Rviz中進(jìn)行SLAM建圖如圖8所示。
各算法包的優(yōu)勢(shì)與局限性如表1所示[9-10]。
圖8 運(yùn)用Gmapping算法包進(jìn)行SLAM建圖
表1 SLAM算法比較表
在變電站中,由于電網(wǎng)可靠性下降及電網(wǎng)風(fēng)險(xiǎn)預(yù)警等原因,需要對(duì)不同的設(shè)備進(jìn)行特殊巡視,但當(dāng)前的移動(dòng)機(jī)器人無法很好地與其他型號(hào)的移動(dòng)機(jī)器人保持足夠的安全距離,往往需要等待之前的移動(dòng)機(jī)器人完成巡視任務(wù)后再進(jìn)行特殊巡視。而ROS機(jī)器人操作系統(tǒng)提供了通用的通信系統(tǒng),可以在變電站中使不同型號(hào)的移動(dòng)機(jī)器人并保持足夠的安全距離,在避免事故發(fā)生的同時(shí),提高了巡檢的工作效率。以多臺(tái)三維視覺的移動(dòng)機(jī)器人協(xié)同工作為例,多臺(tái)無人機(jī)系統(tǒng)在Gazebo中起飛如圖9所示,多臺(tái)機(jī)器人在Rviz中進(jìn)行導(dǎo)航與編隊(duì)如圖10所示。
圖9 多臺(tái)無人機(jī)系統(tǒng)在Gazebo中起飛
圖10 多臺(tái)機(jī)器人在Rviz進(jìn)行導(dǎo)航與編隊(duì)
基于ROS的三維視覺移動(dòng)機(jī)器人研究領(lǐng)域的快速發(fā)展,為三維視覺機(jī)器人在變電站應(yīng)用時(shí)的識(shí)別與抓取控制提供了高效的解決方案,實(shí)現(xiàn)了機(jī)器人系統(tǒng)化控制,但在變電站實(shí)際應(yīng)用過程中存在一些挑戰(zhàn)。一是ROS的系統(tǒng)內(nèi)置功能包雖然強(qiáng)大,但是在實(shí)際開發(fā)中開發(fā)者往往只使用部分功能包。因此,會(huì)造成系統(tǒng)過于龐大、冗余;二是ROS中依賴關(guān)系復(fù)雜,基于ROS的三維視覺移動(dòng)機(jī)器人內(nèi)置功能包往往因?yàn)槿鄙倌硞€(gè)所依賴的第三方庫或功能包就無法運(yùn)行;三是ROS的實(shí)時(shí)性差,發(fā)布指令后,需要延遲一段時(shí)間三維視覺移動(dòng)機(jī)器人才開始執(zhí)行任務(wù)。
針對(duì)目前基于ROS的三維視覺移動(dòng)機(jī)器人在變電站中應(yīng)用的研究過程中存在的挑戰(zhàn),提出以下對(duì)策建議。一是裁剪冗余的功能包,開發(fā)專用的系統(tǒng);二是進(jìn)一步合并功能包和庫函數(shù),減少所需依賴;三是采用DDS或其他技術(shù)手段改善ROS的實(shí)時(shí)性問題。
RGBD攝像頭與激光雷達(dá)的配合運(yùn)用,在未來三維視覺移動(dòng)機(jī)器人的發(fā)展中的重要作用日益體現(xiàn),基于ROS的移動(dòng)機(jī)器人具有其他移動(dòng)機(jī)器人識(shí)別物體所不具有的簡(jiǎn)易性、直觀性,將在能源電力領(lǐng)域發(fā)揮重要作用。