徐 健,宋 寶,唐小琦,顏外平
(華中科技大學(xué) 機(jī)械科學(xué)與工程學(xué)院,武漢 430074)
?
伺服驅(qū)動器EtherCAT接口故障診斷及容錯技術(shù)的研究*
徐健,宋寶,唐小琦,顏外平
(華中科技大學(xué) 機(jī)械科學(xué)與工程學(xué)院,武漢430074)
摘要:為解決EtherCAT協(xié)議應(yīng)用于伺服驅(qū)動器所產(chǎn)生的故障診斷及容錯的問題,首先深入研究了基于EtherCAT協(xié)議的伺服控制系統(tǒng)架構(gòu),分析并總結(jié)了伺服驅(qū)動器EtherCAT總線接口所產(chǎn)生的運(yùn)行故障及容錯技術(shù),然后設(shè)計(jì)并實(shí)現(xiàn)了基于總結(jié)歸納的三類故障診斷及容錯機(jī)制流程,并搭建實(shí)驗(yàn)平臺進(jìn)行實(shí)驗(yàn)測試,實(shí)驗(yàn)結(jié)果表明,這種故障診斷和容錯技術(shù)的應(yīng)用很好地提高了EtherCAT總線式伺服驅(qū)動器運(yùn)行的可靠性和穩(wěn)定性。
關(guān)鍵詞:EtherCAT;總線式伺服驅(qū)動器;故障診斷;容錯
0引言
現(xiàn)場總線技術(shù)的出現(xiàn)為高速高精的全數(shù)字化加工控制提供了基礎(chǔ)平臺[1],基于實(shí)時工業(yè)以太網(wǎng)的現(xiàn)場總線技術(shù)可以實(shí)現(xiàn)百兆全雙工的高速穩(wěn)定通信,廣泛應(yīng)用于各類工業(yè)自動化控制設(shè)備當(dāng)中[2-4]。
然而這些協(xié)議運(yùn)用在不同種類的設(shè)備上時,就會與設(shè)備本身的功能產(chǎn)生融合問題,一方面要求設(shè)備應(yīng)用能夠充分利用協(xié)議接口實(shí)現(xiàn)功能的擴(kuò)展;而另一方面又要確保協(xié)議接口本身不能影響設(shè)備的正常功能的實(shí)現(xiàn)。
基于此,本文針對工業(yè)以太網(wǎng)EtherCAT協(xié)議應(yīng)用于伺服驅(qū)動器這一類設(shè)備當(dāng)中所產(chǎn)生的故障診斷和容錯問題進(jìn)行了深入的分析,研究并設(shè)計(jì)EtherCAT總線式伺服驅(qū)動器故障診斷流程以及相應(yīng)的容錯機(jī)制,有效地解決了EtherCAT總線與伺服驅(qū)動器的融合集成問題,極大程度上提高了EtherCAT總線式伺服驅(qū)動器運(yùn)行的可靠性和穩(wěn)定性。
1EtherCAT的伺服控制
1.1EtherCAT的伺服控制系統(tǒng)
基于EtherCAT的伺服控制系統(tǒng)如圖1所示,EtherCAT總線式伺服驅(qū)動器通過ESC(EtherCAT Slave Controller)接入EtherCAT網(wǎng)絡(luò)中,EtherCAT主站通過集總幀的方式與各個伺服驅(qū)動器進(jìn)行數(shù)據(jù)交互[5-6]。ESC對EtherCAT網(wǎng)絡(luò)中的數(shù)據(jù)幀進(jìn)行解析和轉(zhuǎn)發(fā),對有效數(shù)據(jù)進(jìn)行上傳和下載操作。伺服應(yīng)用層再通過PDI(Process Data Interface)接口與ESC中的有效數(shù)據(jù)進(jìn)行交互,實(shí)現(xiàn)伺服控制的功能。
EtherCAT支持的應(yīng)用層協(xié)議和伺服驅(qū)動器控制行規(guī)包括CANopen和SERCOS,分別對應(yīng)于CoE(CANopen over EtherCAT)和SoE(SERCOS over EtherCAT)。本文基于CoE應(yīng)用層協(xié)議,研究伺服驅(qū)動器EtherCAT接口的故障診斷及容錯技術(shù)。

圖1 EtherCAT伺服控制系統(tǒng)
1.2EtherCAT的伺服控制流程
基于CANopen協(xié)議的伺服控制框圖如圖2所示,CANopen伺服應(yīng)用層通過周期性過程數(shù)據(jù)可以將EtherCAT網(wǎng)絡(luò)中的指令數(shù)據(jù)置于經(jīng)典的三環(huán)控制流程當(dāng)中,同時將反饋信息返回到網(wǎng)絡(luò)當(dāng)中[7-9]。

圖2 CoE伺服控制框圖
CANopen協(xié)議置于伺服應(yīng)用層當(dāng)中主要包括周期性過程數(shù)據(jù)的對象字典映射、CANopen郵箱通信協(xié)議實(shí)現(xiàn)對象字典參數(shù)的修改和功率設(shè)備狀態(tài)機(jī)維護(hù)等三大部分的內(nèi)容。
2EtherCAT接口故障診斷研究及設(shè)計(jì)
EtherCAT伺服控制系統(tǒng)在運(yùn)行過程中會產(chǎn)生各類故障診斷信息,按照層次邏輯可以將其劃分為三個方面,如圖3所示。具體包括EtherCAT總線通信故障診斷,主要針對EtherCAT通信應(yīng)用層狀態(tài)的報(bào)警信息;CANopen協(xié)議通信故障診斷,主要診斷CoE郵箱通信等;伺服控制故障診斷,主要針對伺服三環(huán)控制算法中出現(xiàn)的故障進(jìn)行診斷。

圖3 EtherCAT伺服驅(qū)動器故障診斷分類
2.1EtherCAT總線通信故障診斷
EtherCAT協(xié)議定義了一系列的標(biāo)準(zhǔn)化應(yīng)用層狀態(tài)碼,部分狀態(tài)碼如圖4所示,其中主要定義了EtherCAT總線在初始化過程中配置的故障診斷信息,包括狀態(tài)機(jī)、SM同步管理通道、PDO映射配置等。

圖4 應(yīng)用層部分狀態(tài)碼定義
以狀態(tài)機(jī)狀態(tài)碼0x0011、0x0012和0x0013實(shí)現(xiàn)為例,其實(shí)現(xiàn)流程設(shè)計(jì)如圖5所示。總線應(yīng)用層不斷循環(huán)檢測應(yīng)用層請求寄存器是否有狀態(tài)機(jī)切換事件發(fā)生,若有則根據(jù)當(dāng)前狀態(tài)和請求狀態(tài)計(jì)算狀態(tài)轉(zhuǎn)換邏輯,然后根據(jù)狀態(tài)轉(zhuǎn)換邏輯來判別是否產(chǎn)生相應(yīng)的錯誤狀態(tài)碼;若進(jìn)行正常的狀態(tài)切換,則返回0x0000,并執(zhí)行相應(yīng)的狀態(tài)機(jī)操作。例如,狀態(tài)機(jī)由Init狀態(tài)直接切換到Safe-Op狀態(tài),不符合協(xié)議要求,則直接返回0x0011狀態(tài)碼,即無效狀態(tài)改變。

圖5 狀態(tài)機(jī)狀態(tài)碼實(shí)現(xiàn)流程設(shè)計(jì)
再以郵箱SM同步管理通道檢測為例,設(shè)計(jì)流程如圖6所示。從站狀態(tài)在Pre-OP狀態(tài)下時,讀取郵箱SM0和SM1參數(shù),順序檢測SM通道使能、讀寫屬性、但緩存區(qū)檢測、長度檢測和地址檢測等配置信息,若任何一個環(huán)節(jié)產(chǎn)生錯誤,則返回狀態(tài)碼0x0016。

圖6 郵箱配置狀態(tài)碼實(shí)現(xiàn)流程設(shè)計(jì)
2.2CANopen協(xié)議通信故障診斷
在進(jìn)行SDO通信時,當(dāng)產(chǎn)生錯誤時,從站將終止SDO傳輸,產(chǎn)生錯誤代碼,由主站進(jìn)行讀取,CoE通信部分常用的終止代碼如圖7所示。
以其中的部分SDO終止代碼實(shí)現(xiàn)為例,研究并設(shè)計(jì)了其實(shí)現(xiàn)流程,如圖8所示。從CoE緩存隊(duì)列中讀取郵箱數(shù)據(jù)幀,首先判斷郵箱頭是否為CoE郵箱類型,反之則返回命令無效代碼;然后,從數(shù)據(jù)幀中提取操作索引和子索引,根據(jù)索引和子索引查找數(shù)據(jù)字典,依次判斷是否存在、子索引超差和讀寫屬性等信息是否一致,反之則返回相應(yīng)的錯誤代碼。

圖7 部分SDO終止傳輸代碼

圖8 SDO終止代碼實(shí)現(xiàn)流程設(shè)計(jì)
2.3伺服控制故障診斷
伺服驅(qū)動器屬于功率設(shè)備的一種,滿足DS402功率設(shè)備狀態(tài)機(jī)的要求,如圖9所示。其中,伺服控制故障類型根據(jù)具體的伺服應(yīng)用而定,但其反映在功率設(shè)備狀態(tài)機(jī)中統(tǒng)稱為出錯。出錯的狀態(tài)統(tǒng)一反映在設(shè)備的狀態(tài)字0x6041中,可由主站獲取從站伺服的狀態(tài)信息進(jìn)行故障診斷判別。

圖9 CoE功率設(shè)備狀態(tài)機(jī)
3EtherCAT接口容錯技術(shù)研究及設(shè)計(jì)
當(dāng)EtherCAT伺服驅(qū)動器經(jīng)過故障診斷產(chǎn)生報(bào)警信息后,一方面從站根據(jù)所產(chǎn)生的報(bào)警信息進(jìn)行自我容錯的診斷,可歸納為從站主動容錯技術(shù);而另一方面主站獲取到從站的報(bào)警信息后也會進(jìn)行相應(yīng)的容錯處理,可稱為從站被動容錯技術(shù),如圖10所示。

圖10 伺服驅(qū)動器EtherCAT接口容錯機(jī)制分類
3.1從站主動容錯機(jī)制的設(shè)計(jì)
在上述出現(xiàn)的三類故障診斷信息中,CANopen協(xié)議通信故障產(chǎn)生的報(bào)警信息并不會影響從站功能正常實(shí)現(xiàn),其次,伺服控制故障產(chǎn)生的報(bào)警信息并不能由從站自行進(jìn)行復(fù)位,否則將會產(chǎn)生不安全的因素。因此,從站在自我容錯機(jī)制當(dāng)中,當(dāng)總線通信出現(xiàn)故障時可以進(jìn)行容錯從而防止更進(jìn)一步的危險(xiǎn)出現(xiàn)。
在EtherCAT總線通信故障中,針對應(yīng)用層時間產(chǎn)生的狀態(tài)碼,設(shè)計(jì)了如圖11所示的主動容錯流程。當(dāng)從站通信產(chǎn)生應(yīng)用層錯誤代碼時,從站根據(jù)不同狀態(tài)下的狀態(tài)碼進(jìn)行相應(yīng)的自我保護(hù)機(jī)制處理,即在不同的狀態(tài)機(jī)切換下主動關(guān)閉相應(yīng)的通信通道,避免進(jìn)一步的錯誤數(shù)據(jù)傳遞。當(dāng)產(chǎn)生錯誤代碼時,對應(yīng)于狀態(tài)切換I→P(I→B)、P→S和S→O產(chǎn)生關(guān)閉對應(yīng)郵箱通信通道、輸入數(shù)據(jù)通道和輸出數(shù)據(jù)通道。

圖11 從站主動容錯流程
3.2從站被動容錯機(jī)制的設(shè)計(jì)
從站的被動容錯機(jī)制是在基于主站已經(jīng)獲取了從站的報(bào)警信息代碼的前提之下,主站根據(jù)相應(yīng)的報(bào)警復(fù)位清除策略對從站采取的容錯流程。主要包括EtherCAT總線通信故障和伺服控制故障兩類錯誤診斷,其中對于EtherCAT總線通信故障被動容錯機(jī)制而言,從站在進(jìn)入錯誤狀態(tài)后,采取主動容錯機(jī)制后,停止數(shù)據(jù)的輸入輸出,等待主站的復(fù)位信號出現(xiàn)后,開始響應(yīng)主站的控制命令,同時開啟輸入輸出通道,正常運(yùn)行從站。
當(dāng)伺服控制環(huán)產(chǎn)生故障診斷而EtherCAT總線通信正常時,產(chǎn)生的故障診斷信息通過伺服狀態(tài)字0x6041反饋給主站,主站得知伺服控制產(chǎn)生報(bào)警時,通過如圖9所示的CoE功率設(shè)備狀態(tài)機(jī)進(jìn)行伺服復(fù)位0x6040,重新執(zhí)行伺服算法,主站控制器重新調(diào)整控制策略,進(jìn)行伺服控制,達(dá)到被動容錯的流程。
4實(shí)驗(yàn)測試平臺及結(jié)果
本文實(shí)驗(yàn)平臺的主站采用的是德國Beckhoff公司基于PC的自動化軟件TwinCAT,從站采用的基于上述故障診斷技術(shù)設(shè)計(jì)的伺服驅(qū)動器,實(shí)驗(yàn)平臺圖如圖12所示。

圖12 實(shí)驗(yàn)測試平臺
首先進(jìn)行EtherCAT總線通信故障診斷的測試,以狀態(tài)機(jī)切換為例,當(dāng)總線處于初始化狀態(tài)Init時,主站手動發(fā)送Boot狀態(tài)指令,觀測主站讀取從站驅(qū)動器反應(yīng)如圖13所示,此時TwinCAT軟件通過讀取寄存器讀取到了相應(yīng)的應(yīng)用層錯誤代碼0x0013,即不支持引導(dǎo)狀態(tài)。通過主從的一致檢測可以反映基于上述流程設(shè)計(jì)的EtherCAT總線故障診斷技術(shù)產(chǎn)生作用。其余的分類測試結(jié)果與圖5和圖6中的結(jié)果保持一致。

圖13 應(yīng)用層故障診斷測試
然后進(jìn)行CANopen通信協(xié)議故障診斷實(shí)驗(yàn),以進(jìn)行寫數(shù)據(jù)字典中不存在的索引為例,如TwinCAT軟件發(fā)送讀0x2000索引,子索引0,TwinCAT軟件得到了從站的錯誤相應(yīng),代碼為0x06020000,即從站伺服驅(qū)動器不存在這個索引,提醒主站的錯誤操作,如圖14所示。

圖14 CANopen郵箱通信診斷測試

圖15 伺服控制診斷測試
最后進(jìn)行伺服控制故障診斷實(shí)驗(yàn),當(dāng)伺服控制電機(jī)正常運(yùn)轉(zhuǎn)時,人為地抽離編碼器線纜,伺服掉強(qiáng)電使能產(chǎn)生錯誤報(bào)警,此時TwinCAT軟件伺服控制面板上產(chǎn)生錯誤,如圖15所示,當(dāng)重新接入編碼器線纜時,用伺服控制面板復(fù)位伺服控制錯誤,可以重新使伺服驅(qū)動器強(qiáng)電使能并清除報(bào)警信息,使伺服正常運(yùn)轉(zhuǎn)。
5結(jié)束語
本文針對EtherCAT總線協(xié)議應(yīng)用于伺服驅(qū)動器這一類設(shè)備中所產(chǎn)生的故障診斷和容錯技術(shù)進(jìn)行了深入研究,設(shè)計(jì)并實(shí)現(xiàn)了各類故障及容錯技術(shù)的實(shí)現(xiàn)流程,實(shí)驗(yàn)達(dá)到了令人滿意的效果,對于提高EtherCAT總線式伺服驅(qū)動器的穩(wěn)定性和可靠性有重要意義。
[參考文獻(xiàn)]
[1] 謝劍. 高檔數(shù)控系統(tǒng)中的現(xiàn)場總線接口技術(shù)設(shè)計(jì)與開發(fā)[D]. 上海:上海交通大學(xué), 2010.
[2] 魏亞鵬, 韓衛(wèi)光. 實(shí)時工業(yè)以太網(wǎng)技術(shù)的研究[J]. 組合機(jī)床與自動化加工技術(shù), 2013 (7): 49-53.
[3] 朱政紅, 王月娥. 工業(yè)以太網(wǎng)在控制領(lǐng)域中的實(shí)時性技術(shù)[J]. 低壓電器, 2010 (7): 31-34.
[4] Orfanus D, Indergaard R, Prytz G, et al. EtherCAT-based platform for distributed control in high-performance industrial applications[C]//Emerging Technologies & Factory Automation (ETFA), 2013 IEEE 18th Conference on. IEEE, 2013: 1-8.
[5] 郇極, 劉艷強(qiáng). 工業(yè)以太網(wǎng)現(xiàn)場總線 EtherCAT 驅(qū)動程序設(shè)計(jì)及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社, 2010.
[6] 劉艷強(qiáng), 王健, 單春榮. 基于 EtherCAT 的多軸運(yùn)動控制器研究[J]. 制造技術(shù)與機(jī)床, 2008(6): 100-103.
[7] 阮倩茹, 王輝, 施大發(fā), 等. 基于 EtherCAT 的高性能交流伺服控制系統(tǒng)設(shè)計(jì)[J]. 科技導(dǎo)報(bào), 2010, 28(20): 58-61.
[8] Sung M, Kim K, Jin H W, et al. An EtherCAT-based motor drive for high precision motion systems[C]//Industrial Informatics (INDIN), 2011 9th IEEE International Conference on. IEEE, 2011: 163-168.
[9] Kim Y J, Kim K H, Bae Y C. An implementation of vector control of AC servo motor based on optical-EtherCAT network[J]. The Journal of the Korea institute of electronic communication sciences, 2013, 8(4): 583-588.
(編輯趙蓉)
Research on Fault Diagnosis and Fault Tolerance Technology of Servo Driver’s EtherCAT Interface
XU Jian, SONG Bao, TANG Xiao-qi, YAN Wai-ping
(School of Mechanical Science and Engineering, HuaZhong University of Science and Technology, Wuhan 430074, China)
Abstract:To solve the EtherCAT protocol applied servo drives produced by fault diagnosis and fault tolerance of problems, first in-depth study of the servo control system architecture based EtherCAT protocol, analyze and summarize the operational failure and fault tolerance technology servo drive’s EtherCAT bus interface have produced, then design and implement mechanism process based on summarized the three fault diagnosis and fault tolerance, and experimental platform to experiment experimental results show that the application of this fault diagnosis and fault tolerance techniques well improve the EtherCAT bus servo drive’s reliability and stability.
Key words:EtherCAT; bus type servo driver; fault diagnosis; fault tolerance
文章編號:1001-2265(2016)05-0083-04
DOI:10.13462/j.cnki.mmtamt.2016.05.022
收稿日期:2015-06-24;修回日期:2015-07-22
*基金項(xiàng)目:科技重大專項(xiàng):高檔數(shù)控機(jī)床與基礎(chǔ)制造裝備(2013ZX04007-021)
作者簡介:徐健(1992—),男,江西宜春人,華中科技大學(xué)碩士研究生,研究方向?yàn)閿?shù)控技術(shù)、現(xiàn)場總線及網(wǎng)絡(luò),(E-mail)xujian0935@163.com。
中圖分類號:TH166;TG506
文獻(xiàn)標(biāo)識碼:A