李世成, 徐世保, 張?jiān)苿Γ?程 旭, 王石剛
(1.上海交通大學(xué) 機(jī)械與動(dòng)力工程學(xué)院,上海 200240;2.中車戚墅堰機(jī)車有限公司,江蘇 常州 213011)
?
設(shè)計(jì)與制造
mxAutomation接口的機(jī)器人通信協(xié)議開發(fā)
李世成1, 徐世保2, 張?jiān)苿?, 程 旭1, 王石剛1
(1.上海交通大學(xué) 機(jī)械與動(dòng)力工程學(xué)院,上海 200240;2.中車戚墅堰機(jī)車有限公司,江蘇 常州 213011)
在智能變電站中,帶電檢修機(jī)器人對(duì)隔離斷路器進(jìn)行帶電檢修的核心技術(shù)是實(shí)現(xiàn)對(duì)2臺(tái)(工業(yè))機(jī)器人的控制。變電站中強(qiáng)電磁場(chǎng)的干擾對(duì)機(jī)器人控制的可靠性提出了難題。因此,需要制定相應(yīng)的上位機(jī)工控機(jī)(IPC)與控制機(jī)器人的可編程邏輯控制器(PLC)之間的通信協(xié)議,以實(shí)現(xiàn)兩者之間可靠的通信,從而實(shí)現(xiàn)IPC對(duì)機(jī)器人的可靠控制。
隔離斷路器; 帶電檢修機(jī)器人; 工控機(jī); 可編程邏輯控制器; 機(jī)器人; 通信協(xié)議
2014年,我國(guó)新一代智能變電站的擴(kuò)大示范與推廣建設(shè)以及各類新型設(shè)備的引入,大幅推進(jìn)變電站技術(shù)創(chuàng)新發(fā)展,實(shí)現(xiàn)變電站技術(shù)經(jīng)濟(jì)性能全面飛躍。其中,隔離斷路器替代傳統(tǒng)斷路器與隔離開關(guān)的組合應(yīng)用,減少了變電站占地面積,提升了設(shè)備可靠性。對(duì)于采用隔離斷路器的戶外敞開式新一代智能變電站,盡管隔離斷路器本身可靠性較高,但仍然需要檢修。為了檢修隔離斷路器時(shí)避免同停其他電氣設(shè)備,減小設(shè)備停電范圍,以減少經(jīng)濟(jì)損失,對(duì)隔離斷路器實(shí)現(xiàn)帶電檢修作業(yè)就顯得格外重要。
隔離斷路器帶電檢修機(jī)器人用于對(duì)(配套了新型連接金具的)隔離斷路器進(jìn)行帶電檢修、維護(hù),替代了以往基于絕緣操作桿的人工作業(yè)方式,將視覺輔助定位技術(shù)與機(jī)器人結(jié)合,并且實(shí)現(xiàn)了強(qiáng)電磁場(chǎng)環(huán)境下無線/有線的通信,實(shí)現(xiàn)了遠(yuǎn)程控制機(jī)器人進(jìn)行帶電檢修。
從國(guó)內(nèi)外文獻(xiàn)來看,當(dāng)前研制的帶電檢修機(jī)器人主要應(yīng)用在檢測(cè)和檢修2個(gè)領(lǐng)域。
方斌的220 kV支柱磁絕緣子帶電檢測(cè)機(jī)器人,實(shí)現(xiàn)了在高壓電環(huán)境下進(jìn)行超聲探傷,以對(duì)變電站支柱磁絕緣子進(jìn)行帶電檢測(cè)[1]。李健等人研制出了滿足220 kV變電站帶電進(jìn)行檢修的機(jī)器人,它可以帶電檢測(cè)絕緣子零值[2]。陳中偉、戴錦春等人設(shè)計(jì)的高壓巡線機(jī)器人,基于電磁傳感器進(jìn)行導(dǎo)航,可實(shí)現(xiàn)對(duì)架空高壓輸電線路的帶電巡檢作業(yè)[3,4]。陳曉倫等人研制的330 kV變電站帶電清掃機(jī)器人,可實(shí)現(xiàn)遙控操作來清掃斷路器等設(shè)備,其清掃效果符合行標(biāo)[5]。Keiichi TAKAOKA等人研制的基于視覺和柔順控制的全自動(dòng)帶電檢修機(jī)器人robot-Phase III,采用柔性控制的方式實(shí)現(xiàn)了螺栓孔的識(shí)別及擰/松螺栓操作[6]。Lu Shouyin等人設(shè)計(jì)的對(duì)10 kV配電設(shè)備進(jìn)行帶電檢修(更換絕緣子,接/斷線等操作)的機(jī)器人,采用了主從人工控制與現(xiàn)場(chǎng)自動(dòng)控制模式相結(jié)合的模式。通過現(xiàn)的測(cè)試,無論效率上還是魯棒性都滿足要求[7]。
本文所闡述的對(duì)隔離斷路器進(jìn)行帶電檢修的機(jī)器人,在國(guó)內(nèi)外均為首例。
目前,基于IPC控制工業(yè)機(jī)器人,已出現(xiàn)了成熟的產(chǎn)品。如Beckhoff TwinCAT 3.1中的軟件庫(kù)與KUKA的mxAutomation接口基于EtherCAT通信實(shí)現(xiàn)對(duì)機(jī)器人的控制;FANUC機(jī)器人基于Ethernet TCP/IP協(xié)議的動(dòng)態(tài)鏈接庫(kù)(FRRJIF.DLL),或者基于EtherNet/IP協(xié)議的Rockwell PLC兩種控制方式。新松機(jī)器人控制系統(tǒng)二次開發(fā)軟件,是基于新松機(jī)器人(robot controller,RC)系統(tǒng)底層程序開發(fā)的離線編程接口庫(kù)。
由于帶電檢修現(xiàn)場(chǎng)屬于強(qiáng)電磁場(chǎng)環(huán)境,考慮到控制的可靠性,本文選用PLC來控制機(jī)器人;考慮到在機(jī)器人末端執(zhí)行器相同負(fù)載情況下,需保證機(jī)器人本體更輕,另外,此檢修作業(yè)對(duì)機(jī)器人精度要求高,故選用KUKA機(jī)器人。
隔離斷路器帶電檢修機(jī)器人如圖1所示,功能分為拆卸和安裝金具,兩者操作過程類似。如圖1(b)所示,以拆卸金具為例來說明:將帶電檢修機(jī)器人移動(dòng)到地面合適的位置,將操作平臺(tái)提升到一定高度,通過視覺系統(tǒng)的定位,擰緊機(jī)器人將擰緊槍套上(L形套管上的)螺栓頭,然后擰松螺栓,夾持機(jī)器人將金具拔出。
圖1 隔離斷路器帶電機(jī)器人及拆卸/安裝金具
其控制的復(fù)雜性主要體現(xiàn)在以下3方面:
1)現(xiàn)場(chǎng)環(huán)境的復(fù)雜性。由于該變電站為戶外敞開式的,不可避免容易受到天氣等因素的影響,因此,對(duì)系統(tǒng)的可靠性的要求較高。
2)操作空間狹小、受限,需要機(jī)器人運(yùn)動(dòng)精度高。具體表現(xiàn)在:供檢修機(jī)器人行走的過道狹窄;操作時(shí),左右其他相線的影響,需要同時(shí)保證相間(線與線)安全距離。
3)C#接口標(biāo)準(zhǔn)化,方便主程序調(diào)用相應(yīng)的機(jī)器人運(yùn)動(dòng)等接口。
因此,要求主程序可以穩(wěn)定、合理地控制機(jī)器人,讓其按照指定的路徑運(yùn)動(dòng);機(jī)器人當(dāng)前狀態(tài)(當(dāng)前錯(cuò)誤、當(dāng)前位置等信息)可以實(shí)時(shí)地顯示到控制臺(tái)主程序;可遠(yuǎn)程消除機(jī)器人的報(bào)警、錯(cuò)誤信息,使其可以繼續(xù)運(yùn)動(dòng)(或撤回)。因此,必須通過某種機(jī)制實(shí)現(xiàn)IPC與機(jī)器人之間的穩(wěn)定、可靠通信。從IPC角度來看,機(jī)器人相當(dāng)于一個(gè)外部設(shè)備,可以隨時(shí)讀取/改變其狀態(tài)。為了實(shí)現(xiàn)這一要求,需要有獨(dú)特的系統(tǒng)硬件架構(gòu)及軟件通信方式。
基于上述設(shè)計(jì)難點(diǎn),選用mxAutomation作為PLC與機(jī)器人之間的通信接口。它提供相應(yīng)的功能塊(供PLC調(diào)用),保證機(jī)器人可以完全集成到此控制系統(tǒng)中,在這個(gè)過程中,保留機(jī)器人控制器KR C4 compact以及現(xiàn)有的機(jī)械結(jié)構(gòu)。因此,可以方便地使用機(jī)器人現(xiàn)有的運(yùn)動(dòng)函數(shù)及安全函數(shù)。硬件架構(gòu)如圖2所示,PLC和2臺(tái)機(jī)器人處于由交換機(jī)組成的局域網(wǎng)里,PLC與機(jī)器人的數(shù)據(jù)交換通過Ethernet/IP總線。無線網(wǎng)橋1、2的作用相當(dāng)于一根網(wǎng)線,作為一個(gè)冗余設(shè)計(jì),當(dāng)光纖出故障,無線網(wǎng)橋啟動(dòng),進(jìn)行無線通信,實(shí)現(xiàn)了對(duì)操作平臺(tái)以下的電氣隔離。IPC與PLC的通信基于RS—485總線,IPC通過讀/寫PLC內(nèi)部變量,實(shí)現(xiàn)對(duì)機(jī)器人的控制。
圖2 系統(tǒng)的硬件結(jié)構(gòu)
由于PLC與機(jī)器人之間的通信基于mxAutomation接口,為保證IPC與機(jī)器人之間的可靠通信,以實(shí)現(xiàn)IPC通過PLC間接控制機(jī)器人的目的,需要實(shí)現(xiàn)IPC與PLC之間的通信。兩者之間的通信通過運(yùn)行于兩者中的軟件實(shí)現(xiàn)。
PLC軟件包含兩部分,如圖3(a)所示:與機(jī)器人基于mxAutomation通信,以控制機(jī)器人;與IPC基于RS-485通信,以交換數(shù)據(jù)(讀/寫PLC內(nèi)部變量)。寫PLC變量通過RS—485總線發(fā)送字符串到PLC,由PLC程序進(jìn)行解析實(shí)現(xiàn)的;讀PLC變量基于寫PLC變量以使能PLC發(fā)送字符串到IPC,IPC對(duì)此解析出相應(yīng)變量的值。
IPC軟件的獨(dú)特之處在于包含了3個(gè)線程,如圖3(b):1)UI主線程,負(fù)責(zé)處理用戶對(duì)界面的操作,并顯示相應(yīng)的數(shù)據(jù);2)串口發(fā)送線程_ComSnd,負(fù)責(zé)發(fā)送串口數(shù)據(jù),實(shí)現(xiàn)寫PLC變量;3)串口接收線程_ComRec,負(fù)責(zé)接收串口數(shù)據(jù),包括對(duì)接收到(PLC返回的)數(shù)據(jù)進(jìn)行校驗(yàn)及從PLC發(fā)送的字符串中解析出相應(yīng)的變量值。
圖3 軟件架構(gòu)
為了保證IPC與PLC之間基于RS—485通信可以穩(wěn)定進(jìn)行,需要制定相應(yīng)的專有通信協(xié)議。通過該協(xié)議,IPC與PLC對(duì)接收到的字符串進(jìn)行解析,以提取出相應(yīng)的信息,實(shí)現(xiàn)兩者之間的通信。
此通信協(xié)議用于IPC與PLC之間的可靠通信,實(shí)現(xiàn)兩者之間數(shù)據(jù)的交換。IPC通過修改PLC的內(nèi)部變量,實(shí)現(xiàn)對(duì)機(jī)器人的運(yùn)動(dòng)控制以及對(duì)其內(nèi)部變量的讀取。
4.1 寫PLC變量
IPC與PLC通信過程中,寫的變量主要有以下幾種:bool變量、int變量、position變量(包含X,Y,Z,A,B,C這6個(gè)float變量,Status、Turn這2個(gè)int變量)。
IPC通過RS-485總線向PLC發(fā)送字符串完成寫變量操作,字符串結(jié)構(gòu)如圖4所示(其中“#”為分隔符),包含:
圖4 PLC接收字符串格式
1)起始字符:當(dāng)PLC接收到起始字符時(shí),PLC開始存儲(chǔ);
2)機(jī)器人選擇:“01”,#1 KUKA;“02”,#2 KUKA;
3)功能碼:分別指定對(duì)bool(“01”),int(“02”),position(“03”)3種數(shù)據(jù)的寫操作;
4)變量代號(hào):(“001~”)每個(gè)變量在該種數(shù)據(jù)類型下面的唯一編號(hào)(相當(dāng)于此變量在內(nèi)存中的地址);
5)變量目標(biāo)值:在寫變量的時(shí)候,給該變量賦此值;
6)終止字符:當(dāng)接收到終止字符時(shí),PLC停止存儲(chǔ)。
當(dāng)PLC接收到包含上述結(jié)構(gòu)的字符串后,通過其內(nèi)部函數(shù)進(jìn)行解析,完成對(duì)指定變量的賦值。
4.2 讀PLC變量
IPC讀PLC變量基于寫PLC變量。每次讀PLC變量時(shí),分為2步:1)通過修改PLC bool變量執(zhí)行Any2String功能塊;2)通過修改PLC bool變量使能串口發(fā)送功能。
Any2String功能塊的作用是將輸入的5個(gè)bool,5個(gè)Int32,5個(gè)int,6個(gè)float類型數(shù)據(jù)組成1個(gè)string類型數(shù)據(jù),并插入起始、終止字符。如圖6所示,其中,“#”為分隔符。當(dāng)IPC收到此字符串后,解析出其內(nèi)部包含的變量值,就完成了讀PLC變量操作。
圖5 PLC發(fā)送字符串格式
4.3 通信時(shí)數(shù)據(jù)校驗(yàn)
考慮到PLC處理數(shù)據(jù)能力有限,對(duì)IPC到PLC的字符串,采取了最簡(jiǎn)單的校驗(yàn),即PLC將接收到的字符串返還給IPC,IPC將之與之前發(fā)送的字符串比較進(jìn)行校驗(yàn)以確認(rèn)PLC是否已收到該字符串。對(duì)于PLC到IPC的字符串,采用了類似于1校驗(yàn)(Mark)的方式,即在PLC發(fā)送的字符串首、尾加上“/r”(回車符),IPC接收到PLC的字符串后,檢測(cè)其首尾是否包含“/r”來完成校驗(yàn)。
為了驗(yàn)證上述通信協(xié)議的合理性與可靠性,設(shè)計(jì)了相應(yīng)的實(shí)驗(yàn)來求證。
5.1 IPC與PLC通信實(shí)驗(yàn)
為了監(jiān)控IPC與PLC之間的串口數(shù)據(jù)包,采用串口監(jiān)控軟件Bus Hound,它是美國(guó)Perisoft開發(fā)的專門用于PC各種總線數(shù)據(jù)包監(jiān)視的工具軟件。
1)寫PLC變量
如表1所示,OUT1為IPC發(fā)給PLC的(控制)字符串,用以寫變量代號(hào)為“001”的bool量,使其值為1。
表1 寫/讀PLC變量時(shí)IPC與PLC之間的數(shù)據(jù)交換
IN1是PLC接收到的并原樣回發(fā)給IPC的(校驗(yàn))字符串,以供IPC進(jìn)行校驗(yàn),確保PLC已收到此字符串。
2)讀PLC變量
如表1所示,OUT1"/r01#01#010#1/r"用以執(zhí)行Any2String功能塊,將KRC_ReadActualPosition功能塊的輸出6個(gè)float量(X,Y,Z,A,B,C),2個(gè)int量(Status,Turn)拼接成的字符串;OUT2"/r01#01#009#1/r"用以使能PLC發(fā)送串口數(shù)據(jù)。IN1,IN2是PLC(對(duì)上面2個(gè)寫操作)分別返回的校驗(yàn)字符,用于IPC校驗(yàn),以確保PLC已收到該字符串。IN3是PLC返回的(包含當(dāng)前機(jī)器人位置信息所拼接的)字符串。
3)寫/讀PLC變量實(shí)時(shí)性測(cè)試
在控制機(jī)器人過程中,IPC需要對(duì)機(jī)器人做相應(yīng)的運(yùn)動(dòng)軌跡規(guī)劃,以保證機(jī)器人在狹小、受限的操作空間作業(yè)時(shí)不至于碰到變電站其他設(shè)備。在每次控制機(jī)器人前,IPC將運(yùn)動(dòng)軌跡規(guī)劃后得到的機(jī)器人目標(biāo)位置一次性下發(fā)給PLC,PLC再控制機(jī)器人運(yùn)動(dòng)。圖6為向PLC發(fā)送50組運(yùn)動(dòng)目標(biāo)位置所消耗的時(shí)間,每組目標(biāo)位置包含6個(gè)float量(X,Y,Z,A,B,C),2個(gè)int量(Status,Turn);以及讀機(jī)器人當(dāng)前位置(X,Y,Z,A,B,C,Status,Turn)所消耗的時(shí)間。
圖6 寫/讀PLC變量所消耗的時(shí)間
消耗的時(shí)間包含:上位機(jī)發(fā)送數(shù)據(jù)時(shí)進(jìn)行數(shù)據(jù)校驗(yàn)(總計(jì)約4.4 s(寫),約0.55 s(讀));發(fā)送數(shù)據(jù)時(shí)的延時(shí)(保證PLC有足夠時(shí)間處理)(總計(jì)約10.3 s(寫),約0.9 s(讀))。
5.2 基于此通信協(xié)議控制機(jī)器人
由于IPC通過與PLC通信來控制機(jī)器人,因此,需要對(duì)這種控制方式進(jìn)行測(cè)試。測(cè)試內(nèi)容包含以下功能:下發(fā)運(yùn)動(dòng)目標(biāo)位置并使能運(yùn)動(dòng),讀取機(jī)器人信息(錯(cuò)誤信息,當(dāng)前位置信息)。如圖7所示。
圖7 測(cè)試項(xiàng)目
如圖7(a)所示,初始狀態(tài)下,金具沒有裝入L形套管中,擰緊槍沒有插入螺栓頭。通過IPC下發(fā)運(yùn)動(dòng)目標(biāo)位置到PLC,并使能機(jī)器人運(yùn)動(dòng),2臺(tái)機(jī)器人分別運(yùn)動(dòng)到位:將金具裝入L形套管;將擰緊槍插入螺栓頭。如圖7(b)所示,讀取的mxA.(mxAutomation)錯(cuò)誤代號(hào)為510(“PLC與機(jī)器人連接中斷”)。讀取的KR C4錯(cuò)誤代號(hào)為1447(“所設(shè)置的目標(biāo)位置不可及”)。讀取的位置信息為笛卡爾坐標(biāo)系位置信息,包含6個(gè)float量(X,Y,Z,A,B,C),2個(gè)int量(Status,Turn)。
通過實(shí)驗(yàn),對(duì)基于專有通信協(xié)議控制機(jī)器人的方式進(jìn)行測(cè)試,可以可靠地實(shí)現(xiàn)以下功能:
1)主程序可以控制機(jī)器人按照指定的路徑以不同方式運(yùn)動(dòng)(點(diǎn)到點(diǎn)、直線、JOG等);
2)機(jī)器人當(dāng)前狀態(tài)(錯(cuò)誤信息,位置信息)可以實(shí)時(shí)地顯示到控制臺(tái)主程序;
3)可通過IPC程序來消除機(jī)器人的報(bào)警、錯(cuò)誤信息,使其可以繼續(xù)運(yùn)動(dòng)(或撤回)。
因此,本文提出的基于RS—485總線制定的IPC與PLC之間的專有通信協(xié)議是可行的。它將對(duì)機(jī)器人的控制集成到IPC軟件中,從而將PLC對(duì)機(jī)器人的控制間接地轉(zhuǎn)移到IPC對(duì)機(jī)器人的控制。
[1] 方 斌.220 kV支柱瓷絕緣子帶電檢測(cè)機(jī)器人技術(shù)及應(yīng)用[D].上海:上海交通大學(xué),2007.
[2] 李 健,魯守銀,王振利,等.220 kV變電站帶電作業(yè)機(jī)器人的研制[J].制造業(yè)自動(dòng)化,2013(17):76-79.
[3] 陳中偉,肖 華,吳功平.高壓巡線機(jī)器人電磁傳感器導(dǎo)航方法[J].傳感器與微系統(tǒng),2006,35(9):33-35,39.
[4] 戴錦春,胡 睿,方宏良,等.高壓巡線機(jī)器人穿越耐張桿塔的控制算法[J].傳感器與微系統(tǒng),2008,27(8):106-108.
[5] 陳曉倫,彭夕嵐,楊汝清,等.330 kV變電設(shè)備帶電清掃機(jī)器人研究[J].電網(wǎng)技術(shù),2007(19):56-59.
[6] Takaoka K,Yokoyama K,Wakisako H,et al.Development of the fully-automatic live-line maintenance robot-Phase III[C]∥Proceedings of the IEEE International Symposium on Assembly and Task Planning,Fukuoka,2001:423-428.
[7] Lu Shouyin,Ma Peisun,Li Bingqiang,et al.Live woking robot for power distribution systems[C]∥2003 Proceedings of 4th International Conference on Control and Automation,ICCA’03,Montreal,Que,Canada,2003:906-910.
Development of communication protocol for robot based on mxAutomation Interface
LI Shi-cheng1, XU Shi-bao2, ZHANG Yun-jian1, CHENG Xu1, WANG Shi-gang1
(1.School of Mechanical Engineering,Shanghai Jiao Tong University,Shanghai 200240,China;2.China Railway Rolling Stock Qi Shuyan Institute Co Ltd,Changzhou 213011,China)
In intelligent substations,the core technology of the robot used for hot-line isolated circuit breaker maintenance is the control of two industrial robots,because of strong electromagnetic interference in substation,which makes it difficult to control robots stably.As a result,suitable communication protocol between industrial personal computer(IPC) and programmable logic controller(PLC) is needed to realize stable communication between them,and control robots using IPC.
isolated circuit breaker;live-line maintenance robot;industrial personal computer(IPC); programmable logic controller(PLC); industrial robot;communication protocol
10.13873/J.1000—9787(2017)07—0075—04
2016—07—25
TP 273
A
1000—9787(2017)07—0075—04
李世成(1990-),男,碩士研究生,研究方向?yàn)閺?fù)雜機(jī)電系統(tǒng)設(shè)計(jì)與控制。